gpt4 book ai didi

python - 你如何在 python 中替换和反转字符串?

转载 作者:太空宇宙 更新时间:2023-11-04 08:48:16 25 4
gpt4 key购买 nike

这是我目前所拥有的,出于某种原因,它没有用 G 替换 C。为什么会这样?

DNASeq=raw_input("Enter the DNA sequence here: ")
DNASeq=DNASeq.upper().replace(" ","")

reverse=DNASeq[::-1]

print reverse.replace('A','U').replace('T','A').replace('C','G').replace('G','C')

最佳答案

问题是您将 C 替换为 G,然后将 G 替换为 C。一种防止从一个转到另一个的简单方法是将 C 替换为 g,这样它就不会返回到 C,然后大写结果:

gattaca="GATTACA"
rev = gattaca[::-1]
print rev.replace('A','u').replace('T','a').replace('C','g').replace('G','c').upper()

这会正确输出 UGUAAUC 而不是像您的示例那样输出 UCUAAUC

更新

但是,更 Pythonic 的方式,避免基于大小写的 hack,并且因为字符串不需要扫描五次而更有效,并且目的更明显,将是:

from string import maketrans
transtab = maketrans("ATCG", "UAGC")
print rev.translate(transtab)

关于python - 你如何在 python 中替换和反转字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37981405/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com