如何在Python中将DNA列表序列转换为蛋白质序列



这是我正在使用的当前值:

DNA_list=['ATTGAT','CTGGCA','TAGGAC','GAGGCT'] #transcription
RNA_list=['UAACUA','GACCGU','AUCCUG','CUCCGA']
protein_list=['_L','DV','IL','LR']

我需要帮助将DNA序列列表转换为蛋白质序列。从本质上讲,程序应该以3对读取RNA_list以模仿密码子的读取,然后获取3个序列并从字典或任何存储氨基酸的东西中提取值(如BioPython或其他模块)。这是我到目前为止所拥有的,但我只能从单个序列而不是列表完成此操作:

codon = {"AAA":"K", "AAC":"N", "AAG":"K", "AAU":"N", 
"ACA":"T", "ACC":"T", "ACG":"T", "ACU":"T", 
"AGA":"R", "AGC":"S", "AGG":"R", "AGU":"S", 
"AUA":"I", "AUC":"I", "AUG":"M", "AUU":"I", 

"CAA":"Q", "CAC":"H", "CAG":"Q", "CAU":"H", 
"CCA":"P", "CCC":"P", "CCG":"P", "CCU":"P", 
"CGA":"R", "CGC":"R", "CGG":"R", "CGU":"R", 
"CUA":"L", "CUC":"L", "CUG":"L", "CUU":"L", 
"GAA":"E", "GAC":"D", "GAG":"E", "GAU":"D", 
"GCA":"A", "GCC":"A", "GCG":"A", "GCU":"A", 
"GGA":"G", "GGC":"G", "GGG":"G", "GGU":"G", 
"GUA":"V", "GUC":"V", "GUG":"V", "GUU":"V", 
"UAA":"_", "UAC":"Y", "UAG":"_", "UAU":"T", 
"UCA":"S", "UCC":"S", "UCG":"S", "UCU":"S", 
"UGA":"_", "UGC":"C", "UGG":"W", "UGU":"C", 
"UUA":"L", "UUC":"F", "UUG":"L", "UUU":"F"}
protein_seq = ""
for x in range(0, len(RNA_list),3):
codon=RNA_list[i:i+3]
protein_seq += RNA_codon[codon]

同样,问题是这仅适用于单个序列,而不适用于列表。任何帮助将不胜感激!

result = []
for rna in RNA_list:
protein_seq = ""
for i in range(0, len(rna), 3):
rna_codon = codon[rna[i:i+3]]
protein_seq += rna_codon
result.append(protein_seq)
print(result)

ix是不同的变量。您需要两个循环,外部循环遍历序列列表,内部循环遍历每个序列。

注意结果与protein_list不同,第二个元素是DR,而不是DV

这行不通吗?

result = []
for rna in RNA_list:
protein_seq = ""
for i in range(0, len(rna),3):
codon=rna[i:i+3]
protein_seq += RNA_codon[codon]
result.append(protein_seq)

相关内容

  • 没有找到相关文章

最新更新