我想读取ATCG的DNA序列,并计算出排在第三位的ATCG的数目。你知道吗
例如1:
DNA=AAATTCCCGG
排在第三位的ATCG是这样的:AA'A'TT'T'CC'C'GG'G'
所以在这个序列中,A=1t=1c=1g=1。你知道吗
例如2:
DNA=ATGGTATTAAA
在“G”GT“A”TT“T”AA“A”
我想数一数3,6,9,12个ATCG数字。所以在DNA中A=2t=1c=0g=1
我的txt文件如下:
>seq1
ATGGTATTTAAA
ATCGTTTTTAAA
>seq2
ATGGTATTTAAA
ATCGTTTTTAAA
ATCGTTTTTAAA
>seq3
ATGGTATTTAAA
我的代码如下:
f = open("a.txt","r")
seqlist = []
for line in f.readlines():
line = line.strip("\n")
if line.startswith(">"):
print(line)
elif line.startswith("A") or line.startswith("T") or line.startswith("C") or line.startswith("G"):
seq = line
y = 0
for y in range(2, len(seq), 3):
x = seq[y]
print(x)
现在我可以拿到ATCG的第三名了,我想把它列在一个名单里。你知道吗
然后我可以数ATCG。你知道吗
但我不知道怎么把它放在一张单子里。得到以下结果。你知道吗
seq1 A=3 T=3 C=1 G=1
seq2 A=? T=? C=? G=?
seq3 A=? T=? C=? G=?
非常感谢你对我的帮助。你知道吗
下面是一个尽可能少地修改代码的选项:
输出:
这是同样的事情,但总体上改进了代码,并更好地格式化了输出:
输出:
相关问题 更多 >
编程相关推荐