Python の UnboundLocalError: 変数スコープの問題の解決
エラー メッセージ「UnboundLocalError: 割り当て前にローカル変数 'Var1' が参照されました」は、関数内のローカル変数には、値が割り当てられる前にアクセスされます。提供されたコードでは、「Var1」変数は「function()」のスコープ内で定義されていませんが、関数内の条件文と代入文で使用されています。
この問題を解決するには、 「Var1」変数と「Var2」変数を関数内でグローバル変数として宣言する必要があります。グローバル変数はモジュール レベルで定義され、関数内からアクセスできます。これらの変数をグローバルとして宣言するには、関数の先頭に次の行を追加します。
global Var1, Var2
変数をグローバルとして宣言すると、Python インタープリターは変数が代わりにモジュール レベルのスコープから解決される必要があることを理解します。関数内でローカルコピーを作成する方法。これにより、関数が意図したとおりに「Var1」変数と「Var2」変数を参照および変更できるようになります。
注: 関数内でのグローバル変数の使用は、可能であれば避けてください。混乱を招き、エラーが発生しやすいコードになります。より良い方法は、変数を呼び出し元から呼び出し先へパラメーターとして明示的に渡すか、結果として返すことです。
以上がPython の UnboundLocalError を解決する方法: グローバル変数とローカル変数?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。