数列s=['a','b','c','d'],输出所有两两组合:
#有序排列:
import itertools
import itertools
list1=['a','b','c','d']
#2指的是几个元素组合
iter = itertools.combinations(list1,2)
print(list(iter))
#输出结果:
[[('a', 'b'), ('a', 'c'), ('a', 'd'), ('b', 'c'), ('b', 'd'), ('c', 'd')]]
#无序排列
import itertools
list1=['a','b','c','d']
iter = itertools.permutations(list1,2)
print(list(iter))
#输出结果:
[[('a', 'b'), ('a', 'c'), ('a', 'd'), ('b', 'a'), ('b', 'c'), ('b', 'd'), ('c', 'a'), ('c', 'b'), ('c', 'd'), ('d', 'a'), ('d', 'b'), ('d', 'c')]]
#不使用内置工具实现无序排列
list1=['a','b','c','d']
list2 = []
for i in list1:
for j in list1:
if i != j:
list2.append((i,j))
print(list3)
#输出结果:
[('a', 'b'), ('a', 'c'), ('a', 'd'), ('b', 'a'), ('b', 'c'), ('b', 'd'), ('c', 'a'), ('c', 'b'), ('c', 'd'), ('d', 'a'), ('d'