我正在尝试创建一个函数,该函数将接受 DNA 字符串,然后将它们补码(即如果是 A,则给出 T,如果是 G,则给出 C [反之亦然])。
到目前为止我有这段代码:
def Complement(DNA):
DNA = input("Enter your DNA string:")
if DNA == 'A':
result = 'T'
elif DNA == 'T':
result = 'A'
elif DNA == 'G':
result = 'C'
else:
result = 'G'
return (result)
但是,python 将 4 个“digit”字符串作为“else”并生成 G 作为输出。我如何更改此代码,以便任何人都可以输入随机字母/大小的 DNA 字符串,并且该函数将补充每个字母? 如果您的 DNA 字符串中只有一个字母并没有多大用处,则此代码有效:/
谢谢
最佳答案
Python 的 string translate method正是为这类问题而设计的:
>>> import string
>>> xlat = string.maketrans('atgcATGC', 'tacgTACG')
>>> 'gattaca'.translate(xlat)
'ctaatgt'
xlat 变量是一个转换表。 str.translate() 方法接受一个字符串并应用翻译表。
关于python - 如何创建一个函数来查看字符串中的单个字母?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42731608/