2011-12-21 7 views
0

前に参照され、私はこのスクリプトを実行するときに発生する(タイトルに表示)の誤差がありますUnboundLocalError:でCONNのローカル変数が割り当て

​​

connがグローバルスコープを持っており、参照される前に、なしに割り当てられています関数内で - なぜエラーメッセージ?

あなたが globalキーワードを持つ関数に変更したいあなたのグローバル変数を宣言する必要がPythonで
+0

関数本体全体に貼り付けていません。はい、もちろん:PHP :)あなたは変数 –

答えて

5

:私の推測では、あなたが機能のどこかで、後connにいくつかの値を代入しようとしているということです

def connectDb(): 
    global conn 
    if conn is not None: # Error occurs on this line 
     return 
    ... 

をので、globalキーワードを使用する必要があります。

+2

うわー、私は決して前にいることを見られません。しかし、私はOPが後でこの機能で何をしているのかと思う。 –

+0

のようにちょっと見える - あなたは後でこのスコープ内の変数を再バインドしているため、問題が発生 –

+0

@gnibblerを再バインドしたい場合にのみ必要とされる – Constantinius

関連する問題