问题描述
我有一个无法使用的功能。我必须将.txt文件中的核苷酸序列翻译成氨基酸,然后将字符串与字典进行比较。有人可以告诉我这是怎么了吗?输出仅显示.txt文件中的字符串,并且应该是该文件中的氨基酸序列。
f = open('hemoglobin.txt','r')
sequence = f.readline()
while sequence:
sequence = sequence.rstrip()
print(sequence)
sequence = f.readline()
gencode = { 'ATA':'I','ATC':'I','ATT':'I','ATG':'M','ACA':'T','ACC':'T','ACG':'T','ACT':'T','AAC':'N','AAT':'N','AAA':'K','AAG':'K','AGC':'S','AGT':'S','AGA':'R','AGG':'R','CTA':'L','CTC':'L','CTG':'L','CTT':'L','CCA':'P','CCC':'P','CCG':'P','CCT':'P','CAC':'H','CAT':'H','CAA':'Q','CAG':'Q','CGA':'R','CGC':'R','CGG':'R','CGT':'R','GTA':'V','GTC':'V','GTG':'V','GTT':'V','GCA':'A','GCC':'A','GCG':'A','GCT':'A','GAC':'D','GAT':'D','GAA':'E','GAG':'E','GGA':'G','GGC':'G','GGG':'G','GGT':'G','TCA':'S','TCC':'S','TCG':'S','TCT':'S','TTC':'F','TTT':'F','TTA':'L','TTG':'L','TAC':'Y','TAT':'Y','TAA':'*','TAG':'*','TGC':'C','TGT':'C','TGA':'*','TGG':'W' }
def translate(sequence):
for i in range(0,len(sequence),3):
codon = str(sequence[i])
if codon == gencode['TAA','TAG','TGA']:
print('STOP')
break
elif codon == gencode[key]:
print(gencode[value])
return()
解决方法
您没有调用translate()
函数。
while sequence:
sequence = sequence.rstrip()
translate(sequence)
,
更改此项:
if codon == gencode['TAA','TAG','TGA']:
收件人:
if codon in ['TAA','TGA']: