第一次说2,第二次说4.从顶部重复.
所以我编写了下面的生成器函数.每次通过next调用它都会返回后续值,然后从顶部重复.
为了学习,改进,不是意见,还有更好的方法吗?在Python中似乎总是有更好的方法,我喜欢学习它们以提高我的技能.
“主要代码”仅用于显示正在使用的发生器,振荡器的示例,而不是振荡器的主要用途.
## Main codego_Osci = g_Osci()for i in xrange(10): print("Value: %i") %(go_Osci.next())## Generatordef g_Osci(): while True: yIEld 2 yIEld 4解决方法 是的,还有更好的方法.
itertools.cycle
是为此任务明确设计的: >>> from itertools import cycle>>> for i in cycle([2,4]):... print i...2424242# Goes on forever
您也可以使用@L_502_2@仅循环一定次数:
>>> for i,j in enumerate(cycle([2,4])):... if i == 10: # Only loop 10 times... break... print j...2424242424>>>总结
以上是内存溢出为你收集整理的Python中的振荡值全部内容,希望文章能够帮你解决Python中的振荡值所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)