我注意到 Python 中的 itertools.combinations 对象似乎可以 self 删除:
>>> import itertools
>>> x = itertools.combinations( 'ABCD', 2 )
>>> print list( x )
[('A', 'B'), ('A', 'C'), ('A', 'D'), ('B', 'C'), ('B', 'D'), ('C', 'D')]
>>> print list( x )
[]
为什么对象x在这里改变了?我没有将 x 指定为任何东西。
最佳答案
您正在创建一个生成器。如果您想稍后使用这些值,请将它们保存到列表中:
>>> import itertools
>>> x = itertools.combinations( 'ABCD', 2 )
>>> list_of_x = list( x )
>>> print(list_of_x)
[('A', 'B'), ('A', 'C'), ('A', 'D'), ('B', 'C'), ('B', 'D'), ('C', 'D')]
>>> print(list_of_x)
[('A', 'B'), ('A', 'C'), ('A', 'D'), ('B', 'C'), ('B', 'D'), ('C', 'D')]
关于python itertools.combinations 已删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26889086/