python itertools.combinations 已删除

标签 python variables combinations python-itertools

我注意到 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/

相关文章:

mysql - 从 A 中选择所有并加入 B 中的所有非重复组合,以便 : ab, ac,ad,abc,abd ... 在 MySQL 中?

javascript - 如何打印 DOM 对象的选择器

python - Haar Training : error (-215)_img. row * _img.cols == vecSize 函数

python - 如何将文档附加到 python 枚举的成员?

variables - 如果 a/p 输入包含特定单词

javascript - 在 JavaScript 中赋值之前如何检查变量是否已定义?

algorithm - 组合问题,房间配置

Python ConfigParser.NoSectionError : No section:

javascript - 在服务器上处理单页应用程序前端和 API 后端的最佳方法

C - 战列舰阵列