Python函数继承

2024-05-17 03:44:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个程序可以读入输入文本文件(DNA.txt)然后使用此函数将DNA序列(保存为字符串)转换为各种氨基酸SLC代码:

def translate(uppercase_dna_sequence, codon_list):
     slc = ""
     for i in range(0, len(uppercase_dna_sequence), 3):
          codon = uppercase_dna_sequence[i:i+3]
          if codon in codon_list:
               slc = slc + codon_list[codon]
          else:
               slc = slc + "X"
     return slc

然后,我有一个函数来创建两个输出文本文件:

normalDNA.txt and mutatedDNA.txt

每个文件都有一个很长的DNA序列。在

我现在想写一个函数,允许我把这两个文件都作为输入文件读取,并使用上面提到的“translate”函数来翻译包含文本文件中的DNA序列。(就像我做的一样DNA.txt文件,但使用原始翻译功能。(所以我假设我试图将另一个函数的属性继承给这个函数)。我有这个代码:

^{pr2}$

程序在我调用它时运行:

print txtTranslate(translate)

但它打印出:

function txtTranslate at 0x103bf39b0>

我希望第二个函数(txtTranslate)读入外部文本文件,然后让第一个函数翻译输入并将结果“打印”给用户。。。在

我有我的完整代码,但我想我错过了一些小的,希望!或者我应该用OOP把所有的东西放到类中?在

我对连接两个函数是新手,所以请原谅第二个函数缺乏知识。。。在


Tags: 文件函数代码txt序列translatelistdna
1条回答
网友
1楼 · 发布于 2024-05-17 03:44:06

这跟继承没有任何关系。如果你想让txtTranslate执行translate,你必须实际调用它。尝试:

def txtTranslate():
    with open('normalDNA.txt') as inputfile:
        normalDNA_input = inputfile.read()
        print normalDNA_input

    with open('mutatedDNA.txt') as inputfile:
        mutatedDNA_input = inputfile.read()
        print mutatedDNA_input

    #todo: get codon_list from somewhere
    print translate(normalDNA_input, codon_list)
    print translate(mutatedDNA_input, codon_list)

txtTranslate()

相关问题 更多 >