循环次数未知的嵌套循环



我有一个问题,我必须测试一个数组的每一个元素与下一个数组中的每一个其他元素,下一个数组的每一个元素与下一个数组的每一个元素等....自然,我想到了嵌套循环但问题是数组的数量是由用户给出的所以它看起来像这样:

for i in k:
for j in a[i]:
for k in a[i+1]:
for t in a[i+2]:
etc.......

所以这是一个循环的循环我怎么能减少这段代码??

递归是解决这类问题的好方法:

def nested(a, i, end, elems = []):
if (i<end):
for j in a[i]:
elems.append(j)
nested(a, i+1, end, elems)
elems.pop(j)
else:
pass # here you can do the operation on the elements
for i in k:
nested(a, 0, len(a))

最新更新