我们可以从n位数字生成多少个数字?例如:从1,2,3,我们可以生成1,2,3,12,13,21,.... 321。以及如何在python中生成包含这些数字的列表?
答案 0 :(得分:0)
效率低下的解决方案。
l=[1,2,3]
from itertools import permutations
for i in range(1, len(l)+1):
print [k for k in permutations(l, i)]
输出:
[(1,), (2,), (3,)]
[(1, 2), (1, 3), (2, 1), (2, 3), (3, 1), (3, 2)]
[(1, 2, 3), (1, 3, 2), (2, 1, 3), (2, 3, 1), (3, 1, 2), (3, 2, 1)]