发布
社区首页 >问答首页 >创建彼此类对象的Python类

创建彼此类对象的Python类
EN

Stack Overflow用户
提问于 2012-12-07 06:59:37
回答 1查看 156关注 0票数 1

可能重复: Help with Python UnboundLocalError: local variable referenced before assignment

在python3中,我有两个类,一个是DNA类,一个是RNA类。我希望DNA类有一个方法,该方法接受DNA序列( DNA的一个实例变量,self.sequence),将其转换为RNA序列(很容易用for循环完成),然后创建一个带有新序列作为实例变量的RNA对象。

同时,我希望RNA类有一个相反的方法(也就是说,它获取RNA序列,生成相应的DNA序列,然后创建一个DNA对象,该对象使用该序列作为实例变量)。

我从DNA中提取RNA的方法如下:

代码语言:javascript
代码运行次数:0
复制
def transcribe(self):
    RNAseq=''
    for base in self.sequence:
        if base=='A' or base=='C' or base=='G':
            RNAseq=RNAseq+base
        if base=='T':
            RNAseq=RNAseq+'U'
    RNA=RNA(RNAseq,self.name+'RNA')
    return RNA

这段代码给出了错误: UnboundLocalError:赋值前引用的局部变量RNA

我想做的事能做吗?

EN

回答 1

Stack Overflow用户

发布于 2012-12-07 07:01:53

将变量称为RNA以外的变量,例如rna

代码语言:javascript
代码运行次数:0
复制
rna = RNA(RNAseq, self.name + 'RNA')
return rna

否则,您将尝试对两种不同的事物使用相同的名称,类和变量,而后者则遮挡前者。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13758391

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档