#迭代器
class switch(object):def __init__(self,value):self.value=valueself.fall=False
#迭代器方法def __iter__(self):yield self.matchraise StopIterationdef match(self,*args):if self.fall or not args:return Trueelif self.value in args:self.fall=Truereturn Trueelse:return False
调用
v='ten'for case in switch(v):if case('one'):print 1breakif case('ten'):print 10break