我正在尝试制作一个基本程序,将一个字符串atgtacatggcatagccata转换成它的RNA序列,即uacauguacccguucgguau。你知道吗
但结果却是:ccccuuuuuuuuuuuuuuuuu
但不太管用。我认为问题是它通过整个字符串,每个字母都是独立的。你知道吗
我是一个非常新的生物信息学编程,所以任何建议将受到欢迎。你知道吗
DNA = "ATGTACATGGGCATAGCCATATA"
dna_length = len(DNA)
print("DNA: " + DNA)
print()
print("Length of DNA in base pairs: "+ str(dna_length))
RNA = []
for char in DNA:
if char == "G":
RNA.append("C")
for line in DNA:
if char == "C":
RNA.append("G")
for line in DNA:
if char == "A":
RNA.append("U")
for line in DNA:
if char == "T":
RNA.append("A")
print("".join(RNA))
我将使用
dict
来执行替换,然后使用join
中的生成器表达式来执行翻译。你知道吗有
str.maketrans
将一组字符转换成另一组字符,还有str.translate
将这种映射应用到字符串;因此,这应该是最快的方法问题是,您在同一个列表上循环了四次,并且还修改了以前循环中所做的更改。因此,使用带有多个if-else条件的单个循环:
最好的解决方案是使用^{} :
在Python3中,我们可以不使用任何导入:
相关问题 更多 >
编程相关推荐