2

同様の質問で他のスレッドを検索しましたが、答えが見つかりません。基本的に、私はクラスを持っています:

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)

このクラスのインスタンスを作成しようとしています:

Revision = Android_Revision()

そのとき、エラーが発生します。ほぼ同じことをしている別の状況があり、正常に機能しているため、混乱しています。2つの違いがこのエラーにつながるのかわかりません。ありがとう。

4

1 に答える 1

3

私はコメントに同意します。この質問には重要な情報が欠けています。このエラーが非常に一般的ではなく、かなり特徴的な症状があった場合、回答に似たものを提供することはできません.

{files,modules} とクラスに対する Python の見方は、Java のものとはかなり異なります。モジュールは、クラスよりも上位レベルの組織単位です。具体的には、モジュールには任意の数のクラスを含めることができます (他の多くのものの中でも)。importクラスではなく、モジュールを扱います。import fooその名前のクラスに関係なく、その名前のモジュールを提供します。同じ名前のモジュールにクラスが必要な場合 (多くの場合、これはクラスを使いすぎているか、組織の単位としてモジュールを無視している兆候です)、 としてアクセスするか、Foo.Fooまたはfrom Foo import Foo.

ちなみに、モジュール名はlower_caseクラス名である必要がありますPascalCase。2つを混ぜないでください。他の規則については、PEP 8もお読みください。

于 2012-10-08T03:34:08.020 に答える