首页 > 代码库 > 【学习】使用生成函数实现可迭代对象
【学习】使用生成函数实现可迭代对象
实现一个可迭代对象的类,它能迭代出给定范围内所有素数
实现方法:将该类的__iter__方法实现生成器函数,每次yield返回一个素数
1 class PrimeNumbers: 2 def __init__(self,start,end): 3 self.start = start 4 self.end = end 5 6 def isPrimeNum(self,k): 7 if k < 2: 8 return False 9 for i in xrange(2,k): 10 if k % i == 0: 11 return False 12 13 return True 14 15 def __iter__(self): 16 for k in xrange(self.start,self.end + 1): 17 if self.isPrimeNum(k): 18 yield k 19 20 if __name__ == "__main__": 21 for x in PrimeNumbers(1,100): 22 print x
【学习】使用生成函数实现可迭代对象
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。