如何实施";通告";Python中的生成器?

如何实施";通告";Python中的生成器?,python,python-3.x,generator,Python,Python 3.x,Generator,给定一个生成器表达式: a = (x for x in range(3)) print(next(a)) # 0 print(next(a)) # 1 print(next(a)) # 2 print(next(a)) # StopIteration exception 0 1 2 --------------------------------------------------------------------------- StopIteration

给定一个生成器表达式:

a = (x for x in range(3)) 
print(next(a)) # 0 
print(next(a)) # 1 
print(next(a)) # 2 
print(next(a)) # StopIteration 
exception 0 1 2 
--------------------------------------------------------------------------- StopIteration                             
Traceback (most recent call last) 
<ipython-input-40-863a9b3464a7> in <module>()       
3 print(next(a))       
4 print(next(a)) 
----> 5 print(next(a))  

StopIteration:
a=(x代表范围(3)中的x)
打印(下一(a))#0
打印(下一(a))#1
打印(下一(a))#2
打印(下一(a))#停止迭代
例外情况0 1 2
---------------------------------------------------------------------------停止迭代
回溯(最近一次呼叫最后一次)
在()
3打印(下一(a))
4打印(下一(a))
---->5打印(下一(a))
停止迭代:
当发生“StopIteration异常”时,如何实现生成器,然后将其“倒带”到开头,再次返回0?

您可以使用此方法

它将iterable作为参数,并循环遍历其项

>>>cycle('ABCD') --> A B C D A B C D A B C D 
您可以使用此方法

它将iterable作为参数,并循环遍历其项

>>>cycle('ABCD') --> A B C D A B C D A B C D 

你想干什么?应该重复多少次?看起来像是一个循环,你可能会说?你在尝试什么?应该重复多少次?看起来像是一个循环,你可能会说?