如何在python中控制嵌套for循环中的层数?

如何在python中控制嵌套for循环中的层数?,python,algorithm,Python,Algorithm,给定一个类似于alist=[1,3,2,20,10,13]的列表,我想编写一个函数find_group_f,它可以生成alist中所有可能的元素组合,同时我可以动态控制每个组中元素的数量k。例如,如果数字k为2,则函数等于: for e1 in alist: for e2 in alist[alist.index(e1)+1:]: print (e1, e2) 当数字k为3时,它将类似于: for e1 in alist: for e2 in alist[ali

给定一个类似于alist=[1,3,2,20,10,13]的列表,我想编写一个函数find_group_f,它可以生成alist中所有可能的元素组合,同时我可以动态控制每个组中元素的数量k。例如,如果数字k为2,则函数等于:

for e1 in alist:
    for e2 in alist[alist.index(e1)+1:]:
        print (e1, e2)
当数字k为3时,它将类似于:

for e1 in alist:
    for e2 in alist[alist.index(e1)+1:]:
        for e3 in alist[alist.index(e2)+1:]:
            print (e1, e2, e3)
我想知道我怎样才能实现这样的目标?提前谢谢

引用:

function Recurse (y, number) 
   if (number > 1)
      Recurse ( y, number - 1 )
   else
      for x in range (y)
      whatever()

实际上不知道如何引用,所以这里有一个链接:

有一个stdlib函数:。使用递归: