itertools.cycle
コピーできるようにしたいインスタンスを含むクラスがあります。1つのアプローチ(私が思いつくことができる唯一のアプローチ)は、最初の反復可能ファイル(リストでした)を抽出し、サイクルが存在する位置を保存することです。
残念ながら、サイクルインスタンスを作成するために使用したリストを取得できません。また、それを行うための明白な方法がないようです。
import itertools
c = itertools.cycle([1, 2, 3])
print dir(c)
['__class__', '__delattr__', '__doc__', '__format__', '__getattribute__',
'__hash__', '__init__', '__iter__', '__new__', '__reduce__',
'__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__',
'__subclasshook__', 'next']
一部のタイプの入力反復可能オブジェクトでこれが許可されない理由の半分を思い付くことができますが、タプルまたはおそらくリスト(可変性が問題になる可能性があります)の場合、なぜそれが許可されないのかわかりません可能。
インスタンスから非無限反復可能詞を抽出することが可能かどうかは誰でも知っていitertools.cycle
ます。そうでなければ、なぜこのアイデアが悪いアイデアなのか誰かが知っていますか?