python - 如何在列表中找到两个数字的所有组合?

标签 python python-3.x combinations

<分区>

假设我有一个包含四个值的列表。我想找到两个值的所有组合。例如,我想得到如下输出:

((0, 1), (0, 2), (0, 3), (1, 2), (1, 3), (2, 3))

如您所见,我不想重复,例如 (0, 1) 和 (1, 0)

这需要能够用于更大的数字,而不仅仅是 4,我将不得不遍历所有的组合

我正在使用 Python 3 和 Windows,理想情况下,这将是一个内置函数、一些简单的列表理解代码,或者我可以导入的东西。我试过用范围来做这个,但我不知道如何从中排除我已经做过的数字。

最佳答案

很简单

from itertools import combinations
list(combinations([0,1,2,3],2))

关于python - 如何在列表中找到两个数字的所有组合?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50754724/

相关文章:

python - .bind() 不适用于 Shift 键绑定(bind)?

python - python 中共享迭代器的两个数据结构

python - 在Windows10上通过pip安装AIORTC

python - pandas 使用 groupby 变换创建 bool 列

algorithm - n 个不同数字的组合

c++ - 有没有办法组合两个变量?

java - 对集合中的项目求和以获得目标值的方法数量 - 顺序很重要

python - 为什么 "conda"和 "conda-env"包无法克隆?

python - Numpy reshape 行为异常

python - 从二维像素值数组创建灰度图像