私は独学で訓練をしていない独学のプログラマーですので、これが愚かな質問であれば事前に私を許してください。これはすぐに結合していないローカル変数のエラーで死ぬpython-del文を早期に実行する
from someModule import someClass
def someFunction():
someInstance = someClass()
print "foo"
del someClass
someFunction()
:
は、Pythonでのプログラミングは私は奇妙な何か見つけながら...
#del someClass
...
:
UnboundLocalError: local variable 'someClass' referenced before assignment
delete文をコメントアウトする問題を修正します
返信:
foo
ので、2つの質問:
1)デル・ステートメントは、関数の最後です。最初はビットの前に呼び出されているのはなぜですか?
2)なぜ私に「バインドされていないローカル変数」エラーが出るのですか? 「束縛されていないグローバル変数」エラーであってはなりませんか?
、あなたが名前
global
を宣言する必要がありますクラスはあなたのクラス定義であり、インスタンスはそのクラスのインスタンスです – darren102はい、私の質問は実際よりも理論的でした...なぜその前に来るコードの前にそのステートメントが評価されていますか? – learningKnight
これは 'print" foo "'が実行されない理由を説明しません。 – WolframH