假设我要计算n,打印所有的a_1 +a_2 + ... + a_n地方a_i都是自然数小于n.
如果n是"小"(例如n = 3),我使用以下代码.
from itertools import product
n=3
for a_1,a_2,a_3 in product(range(n),repeat=n):
print a_1+a_2+a_3
Run Code Online (Sandbox Code Playgroud)
但如果n是"大",比方说n = 10,我需要打字
from itertools import product
n=10
for a_1,a_2,a_3,a_4,a_5,a_6,a_7,a_8,a_9,a_10 in product(range(n),repeat=n):
print a_1+a_2+a_3+a_4+a_5+a_6+a_7+a_8+a_9+a_10
Run Code Online (Sandbox Code Playgroud)
如果我想计算n = 100,这种类型将是非常可怕的!我们还有其他方法吗?