ホームページ >バックエンド開発 >Python チュートリアル >Python 関数で「c = 1」によって「UnboundLocalError」が発生するのはなぜですか?
UnboundLocalError: 代入のある関数の変数スコープ
UnboundLocalError は、変数が適切に定義またはインポートされずに関数内で使用されると発生します。この問題を解決するには、スコープの概念を理解することが重要です。
Python は関数内のローカル変数とグローバル変数を区別します。関数内で変数に値を代入すると、その変数はローカル変数になります。このローカル変数は、同じ名前のグローバル変数よりも優先されます。
この例では、c = 1 が実行されると、ローカル変数 c が作成されます。このローカル変数は、グローバル変数 c を値 3 でオーバーライドします。ただし、print(c) ステートメントは、その時点では未定義であるグローバル c にアクセスしようとしているため、UnboundLocalError が発生します。
この問題を解決するには, Python には 2 つのオプションがあります:
以上がPython 関数で「c = 1」によって「UnboundLocalError」が発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。