Given n
and k
,我需要创建所有长度的元组k
其条目来自range(n)
(0 到 n-1),使得元组的条目按字典顺序排列,并且有特定格式的括号。具体来说,元组从内到外每对都用括号括起来。
例如,如果n=3
and k=4
,那么我希望输出包含类似的内容(((0,0),1),2)
, but not就像是(((0,0),2),1)
.
下面的代码适用于这个特定的实例。问题是我不知道如何概括k
, 哪一个是数量for
loops在下面的代码中。我只能针对特定的情况执行此操作k
, like k=4
这里。我真的需要能够做到这一点any的价值k
.
n=3
k=4
my_list = []
for a in range(n):
x = a
for b in range(a,n):
y = (x,b)
for c in range(b,n):
z = (y,c)
for d in range(c,n):
w = (z,d)
my_list.append(w)
print my_list
Output:
[(((0, 0), 0), 0), (((0, 0), 0), 1), (((0, 0), 0), 2), (((0, 0), 1), 1), (((0, 0), 1), 2), (((0, 0), 2), 2), (((0, 1), 1), 1), (((0, 1), 1), 2), (((0, 1), 2), 2), (((0, 2), 2), 2), (((1, 1), 1), 1), (((1, 1), 1), 2), (((1, 1), 2), 2), (((1, 2), 2), 2), (((2, 2), 2), 2)]