python技巧(8)

来源:互联网 发布:电脑远程软件 编辑:程序博客网 时间:2024/06/06 00:03

生成器函数(不是迭代器)生成可迭代对象,迭代器对象
使用yeild方法,把iter接口实现,可以保留程序的执行状态,并实现了Iterator,Iterable

def PrimeNumber():    def __init__(self,start,end):        self.start=start        self.end=end    def isPrimeNumber(self,k):        if k<2:            return False        for i in xrange(2,k):             if k%i==0:                return False        return True    def __iter__(self):        for x in xrange(self.start,self.end+1):            if self.isPrimeNumber(x):                yeild x
0 0
原创粉丝点击