pythonスクリプトがあり、次のエラーが表示されます。
Traceback (most recent call last):
File "C:\Users\Tim\Desktop\pop-erp\test.py", line 1, in <module>
s = Something()
NameError: name 'Something' is not defined
問題を引き起こすコードはここにあります:
s = Something()
s.out()
class Something:
def out():
print("it works")
これは、Windows 7 x86-64でPython 3.3.0で実行されています。
なぜSomething
クラスが見つからないのですか?
使用する前にクラスを定義します。
class Something:
def out(self):
print("it works")
s = Something()
s.out()
すべてのインスタンスメソッドの最初の引数としてself
を渡す必要があります。
クラスのインスタンスを作成する前に、クラスを定義する必要があります。 Something
の呼び出しをスクリプトの最後に移動します。
馬の前にカートを置き、定義される前にプロシージャを呼び出すことができますが、それはいハックであり、ここで定義されているように自分でロールバックする必要があります。