📅  最后修改于: 2023-12-03 15:04:11.890000             🧑  作者: Mango
本篇介绍如何在Python中生成列表中所有可能的对。
lst = [1, 2, 3, 4]
for i in range(len(lst)):
for j in range(i+1, len(lst)):
print((lst[i], lst[j]))
输出结果:
(1, 2)
(1, 3)
(1, 4)
(2, 3)
(2, 4)
(3, 4)
import itertools
lst = [1, 2, 3, 4]
for pair in itertools.combinations(lst, 2):
print(pair)
输出结果:
(1, 2)
(1, 3)
(1, 4)
(2, 3)
(2, 4)
(3, 4)
方法一是使用了嵌套循环,外层循环遍历列表中的每个元素,内层循环遍历该元素后的所有元素,生成所有可能的对。
方法二是使用了Python标准库中的itertools模块中的combinations函数。combinations函数接受两个参数,第一个参数是要进行排列组合的序列,第二个参数是选择的元素个数。在这个例子中,我们将选择的元素个数设为2,即生成所有由两个元素组成的组合。
无论是方法一还是方法二,都可以用于生成列表中所有可能的对。不过方法二更为简洁,可读性更高,因此建议使用方法二。