Ree*_*POP 3 python string function
我试图创建一个函数,它将接受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)
Run Code Online (Sandbox Code Playgroud)
但是,python将4'数字'字符串作为'else'获取并导致G作为输出.如何更改此代码,以便任何人都可以输入随机字母/大小的DNA字符串,该函数将补充每个字母?如果您在DNA字符串中只有一个字母并没有真正帮助,则此代码有效:/
谢谢
Python的字符串翻译方法就是为这种问题而设计的:
>>> import string
>>> xlat = string.maketrans('atgcATGC', 'tacgTACG')
>>> 'gattaca'.translate(xlat)
'ctaatgt'
Run Code Online (Sandbox Code Playgroud)
该XLAT变量是一个转换表.该str.translate()方法接受一个字符串,并应用转换表.