for a in range(min_num,max_num+1):
for b in range(min_num,max_num+1):
for c in range(min_num,max_num+1):
for d in range(min_num,max_num+1):
for e in range(min_num,max_num+1):
rows=[e,d,c,b,a]
我该如何写这样行可以是任意长度? 我想这样做而无需导入任何模块
答案 0 :(得分:0)
from itertools import product
for i in product(range(3),repeat=3):
print(i)
给你
(0, 0, 0)
(0, 0, 1)
(0, 0, 2)
(0, 1, 0)
(0, 1, 1)
(0, 1, 2)
(0, 2, 0)
(0, 2, 1)
(0, 2, 2)
(1, 0, 0)
(1, 0, 1)
(1, 0, 2)
(1, 1, 0)
(1, 1, 1)
(1, 1, 2)
(1, 2, 0)
(1, 2, 1)
(1, 2, 2)
(2, 0, 0)
(2, 0, 1)
(2, 0, 2)
(2, 1, 0)
(2, 1, 1)
(2, 1, 2)
(2, 2, 0)
(2, 2, 1)
(2, 2, 2)
答案 1 :(得分:0)
发电机解决方案:
xss = [],
for _ in range(n):
xss = ([x] + xs for xs in xss for x in range(min_num, max_num+1))
使用结果的演示(带有n = 5
和min_num, max_num = 7, 9
):
>>> for xs in xss:
print(xs)
[7, 7, 7, 7, 7]
[8, 7, 7, 7, 7]
[9, 7, 7, 7, 7]
[7, 8, 7, 7, 7]
[8, 8, 7, 7, 7]
[9, 8, 7, 7, 7]
[7, 9, 7, 7, 7]
[8, 9, 7, 7, 7]
[9, 9, 7, 7, 7]
[7, 7, 8, 7, 7]
...
[9, 9, 8, 9, 9]
[7, 7, 9, 9, 9]
[8, 7, 9, 9, 9]
[9, 7, 9, 9, 9]
[7, 8, 9, 9, 9]
[8, 8, 9, 9, 9]
[9, 8, 9, 9, 9]
[7, 9, 9, 9, 9]
[8, 9, 9, 9, 9]
[9, 9, 9, 9, 9]