如何在python中实现n次嵌套循环?

2024-06-16 11:43:40 发布

您现在位置:Python中文网/ 问答频道 /正文

函数可以嵌套n次循环,也可以是n次循环。为了做到这一点,我不得不写很多if..elif块取决于n的大小,有没有人有好的策略来处理这个任务?我使用的代码(4个字母组合问题)如下:

def charCombination(n):
   patList = []
   s = 'ATCG'
   if n == 1:
       for i in s:
           patList.append(i)
   elif n == 2:
       for i in s:
           for j in s:
               patList.append(i+j)
   elif n == 3:
       for i in s:
           for j in s:
               for k in s:
                   patList.append(i+j+k)
   ...

   return patList

Tags: 函数代码inforreturnifdef策略
1条回答
网友
1楼 · 发布于 2024-06-16 11:43:40

您可以将itertools.productrepeat参数一起使用

import itertools

def charCombination(n):
    return ["".join(item) for item in itertools.product("ATCG", repeat=n)]

print charCombination(1)
print charCombination(2)
print charCombination(3)

输出

^{pr2}$

相关问题 更多 >