Maison  >  Questions et réponses  >  le corps du texte

python - problème de toutes les permutations et combinaisons possibles

Pour le moment, on entend par toutes les méthodes de combinaison de lettres dans une chaîne, comme suit, une méthode exhaustive violente et laide. . . Je voudrais demander s'il existe une meilleure méthode. J'ai essayé plusieurs méthodes dans itertools, mais aucune ne répond à ce que je veux. Merci !

base='ATCG'
list=[]
for i in base:
    for j in base:
        for k in base:
            for m in base:
                for l in base:
                    for n in base:
                        seq=i+j+k+m+l+n
                        list.append(seq)
print(len(set(list)))
4096
漂亮男人漂亮男人2712 Il y a quelques jours638

répondre à tous(3)je répondrai

  • 淡淡烟草味

    淡淡烟草味2017-05-18 10:51:14

    # coding: utf8
    from itertools import product
    base = 'ATCG'
    result = product(base, repeat=6)  # 因为内容太多, 所以返回生成器, 可以用list方法使其变成列表
    print(len(set(result)))
    
    
    # --- 结果 ----
    4096
    

    répondre
    0
  • 怪我咯

    怪我咯2017-05-18 10:51:14

    import itertools
    len(list(itertools.product(base, repeat=6)))

    répondre
    0
  • 仅有的幸福

    仅有的幸福2017-05-18 10:51:14

    from itertools import product
    print(list(map("".join, product("ATCG", repeat=6))))

    répondre
    0
  • Annulerrépondre