所以我有一个长度为100的DNA字符串。我需要将该字符串中的20个字符随机更改为其他字符的列表。你知道吗
import random
bases = ("A", "C", "G", "T")
def random_dna(length):
return ''.join(random.choice(bases) for _ in range(length))
randomDNA = random_dna(100)
new_list = ("1", "2", "3")
def change_random_string(randomDNA):
x = random.randrange(0, len(randomDNA)-1)
val = random.choice(new_list)
return ''.join(randomDNA)
问题是我的第二种方法根本不起作用。 预期产量:
GTAAGCGCGTTGGGTTTGAAAGCCCACCGCAAAATGAAGCTCTAAGCAAACTGGGA
1T23GC1CGTTGGGTTTG1A2GCCCAC2GtAAAATGAAG11CTAAGCAAACTGGGA
我不知道这是不是复制粘贴的错误,但是您的“return”不在change\u random\u string()函数中。你知道吗
我改变了台词的顺序:
然后:
输出看起来像是您要求的: tttatagctcaagcaaaaacactcctccataacccttccttgacctaatcggcctagccatcgtcgtggagagacgtgtgtatagactcctgggcggt
当把碱基和新列表混合在一起时:
同样的要求打印(随机DNA)返回:
AT1A3T2C1ATAC1A2GT3ACCTCG23GATC3C33AGA2ATAC3A3113A11A1GACG2CT3CGG1T3C13CA1231AA122AA2133ACA3A3A3A3A3A3A
你到底发现了什么问题?你知道吗
相关问题 更多 >
编程相关推荐