python list的排列组合

2020-01-06 15:09:15 浏览数 (1)

排列

例如: 输入为

[‘1’,’2’,’3’]和3

输出为

[‘111’,’112’,’113’,’121’,’122’,’123’,’131’,’132’,’133’,’211’,’212’,’213’,’221’,’222’,’223’,’231’,’232’,’233’,’311’,’312’,’313’,’321’,’322’,’323’,’331’,’332’,’333’]

代码语言:javascript复制
from itertools import product
l = [1, 2, 3]
print list(product(l, l))
print list(product(l, repeat=3))

组合

例如: 输入为

[1, 2, 3]和2

输出为

[1, 2], [1, 3], [2, 3] 不考虑顺序

代码语言:javascript复制
from itertools import combinations
l = [1, 2, 3, 4, 5]
print list(combinations(l, 3))

0 人点赞