For the time being, it is understood as all the combination methods of letters in a string, as follows, a violent and ugly exhaustive method. . . I would like to ask if there is any better method. I have tried several methods in itertools, but none of them meet what I want. Thank you!
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
淡淡烟草味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
仅有的幸福2017-05-18 10:51:14
from itertools import product
print(list(map("".join, product("ATCG", repeat=6))))