类型错误:生成实例时对象不可调用

2024-09-19 23:35:02 发布

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

我已经在其他类似问题的线索中搜索过,但没有找到答案。基本上,我有一门课:

import Android_Class

class Android_Revision(object):

    def __init__(self):
        # dict for storing the classes in this revision
        # (format {name : classObject}):
        self.Classes = {}
        self.WorkingClass = Android_Class()
        self.RevisionNumber = ''

    def __call__(self):  
        print "Called"

    def make_Class(self, name):
        newClass = Android_Class(name)
        self.Classes.update({name : newClass})
        self.WorkingClass = newClass

    def set_Class(self, name):
        if not(self.Classes.has_key(name)):
            newClass = Android_Class(name)
            self.Classes.update({name : newClass})
        self.WorkingClass = self.Classes.get(name)

我试图创建这个类的一个实例:

^{pr2}$

就在那时我得到了错误。我很困惑,因为我有另一种情况,我正在做几乎完全相同的事情,而且它工作得很好。我不知道这两者之间的区别会导致这个错误。谢谢。在


Tags: 答案nameimportselfdef错误updaterevision
1条回答
网友
1楼 · 发布于 2024-09-19 23:35:02

我附和评论,这个问题缺乏重要的信息,如果这个错误不是非常普遍,并且有相当明显的症状,我就不能提供任何类似的答案。在

Python对{files,modules}和类的看法与Java截然不同,模块是比类更高级的组织单元。具体地说,一个模块可以包含任意数量的类(在众多其他事物中)。import处理模块,而不是类。import foo提供该名称的模块,而不考虑该名称的任何类。如果您必须在一个同名的模块中有一个类(通常,这是过度使用类或忽略作为组织单元的模块的标志),您可以将其作为Foo.Foo或{}访问。在

顺便说一下,模块名应该是lower_case,而类名应该是PascalCase。不要把两者混在一起。另请阅读PEP 8以了解其他约定。在

相关问题 更多 >