python - 反向互补DNA

标签 python bioinformatics dna-sequence

我有这个在 python 中反向互补 DNA 的等式:

def complement(s): 
    basecomplement = {'A': 'T', 'C': 'G', 'G': 'C', 'T': 'A'} 
    letters = list(s) 
    letters = [basecomplement[base] for base in letters] 
    return ''.join(letters)
def revcom(s):
    complement(s[::-1])
print("ACGTAAA")
print(complement("ACGTAAA"[::-1]))
print(revcom("ACGTAAA"))

但是线条:

print(complement("ACGTAAA"[::-1]))
print(revcom("ACGTAAA"))

不要彼此平等。只有第一行给出了答案。底部只打印“NONE”

有什么帮助吗?

最佳答案

您忘记了 revcom 中的 return 语句。试试这个:

def revcom(s):
    return complement(s[::-1])

如果您没有明确地从 Python 中的函数返回值,则函数返回 None

关于python - 反向互补DNA,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19570800/

相关文章:

linux - 使用 shell 脚本将逗号分隔的单元格分隔到新行

java - 调试/解码 DNA Java

python - pickle 内部类

python - 是否可以优化这个Python代码,使其执行得更快?

python - 暂停和恢复自包含的 scrapy 脚本

javascript - 使用JavaScript将核苷酸转换为氨基酸

bioinformatics - RNA 剪接 Python

无法接受 Python 装饰器异常

随机森林错误: NA not permitted in predictors (but no NAs in data)

python - 如何使用 python regex 分离每个爆炸结果并将其存储在列表中以供进一步分析