我刚开始学习Python,但我陷入了这样一个问题:我有一个DNA序列,我需要返回它的互补序列。例如,如果我有ATTGCA
,它应该返回TAACGT
。即,将A
替换为T
,将T
替换为A
,C
替换为{G
替换为C
。这是一个练习,我不应该使用字符串方法。我试过的每件事,把“T”作为答案。好像只认得第一个字母,然后就停了下来。我该怎么做?在
我试过了:
>>> def get_complementary_sequence(dna):
for char in dna:
if char == 'A':
return 'T'
elif char == 'T':
return 'A'
elif char == 'C':
return 'G'
elif char == 'G':
return 'C'
>>> get_complementary_sequence('ATTGCA')
'T'
也尝试过:
^{pr2}$
以下是Ashwini Chaudhary的优雅解决方案,对于初学者来说可能更容易理解:
试试字典,这样你就不需要}:
if
和{或使用
^{pr2}$map()
:字符串也是一个字符序列,因此可以对其进行迭代:
相关问题 更多 >
编程相关推荐