本文实例为大家分享了python使用生成器实现可迭代对象的具体代码,供大家参考,具体内容如下
<强>案例分析:>强,,,,,,
,,,,,,,实一个可迭代对象的类,它能迭代出给定范围内所有的素数:
,,,,,,,,,,,,,pn=数量(30)
,,,,,,,,,,,,,在pn k:
,,,,,,,,,,,,,,,,,,,,打印(k)
,,,,,,结果为:2、3、5、7、11、13、17日,19日,23日,29日
<>强如何解决这个问题?
强>
将该类的__iter__方法实现成生成器函数,每次收益返回一个素数
# !/usr/bin/python3 类(对象): def __init__(自我,开始,结束): 自我。开始=开始 自我。结束=结束 #判断一个数字是否是素数 def get_num(自我,k): 如果k祝辞=2: 因为我在范围(2 k): 如果k % i==0: 返回假 还真 def __iter__(自我): 对k范围(自我。首先,self.end + 1): 如果self.get_num (k): #是素产量数出去 收益率k if __name__==癬_main__”: num=数量(30) 因为我在num: 打印(我) >之前以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
python使用生成器实现可迭代对象