ホームページ >バックエンド開発 >Python チュートリアル >Pythonでローカル変数とグローバル変数を使う際の難しさを詳しく解説
ローカル変数: 関数内で定義された変数。そのスコープは現在の関数であり、現在の関数でのみ機能します。
グローバル変数: コードの先頭で定義される変数。スコープはコード全体であり、コード全体に影響します。
まず以下の例を見て、最後に結論を述べましょう。
name = 'PythonTab' def func1(): print('my name is %s' %(name)) name = 'PythonTab.com' print('my name is %s' %(name)) func1() print(name)
出力結果:
my name is PythonTab my name is PythonTab.com default
結論: グローバル変数とローカル変数が同じ場合、関数内ではローカル変数が最初に使用されます。ローカル変数がない場合は、グローバル変数が使用されます
とすると、関数内でローカル変数をグローバルに相対させたい 変数には効果があるので、関数内で glob を使用できます。
name = 'default' def func2(): global name name = 'PythonTab.com' print(name) func2() print(name)
の出力結果を見てみましょう。
PythonTab.com PythonTab.com
の出力結果:
nameList =['Python','Tab','.com'] def func3(): nameList[0] = 'python' func3() print(nameList)
['python','Tab','.com']
出力結果:
nameList =['Python','Tab','.com'] def func4(): nameList = [] func4() print(nameList)
['python','Tab','.com']
出力結果:
nameList =['Python','Tab','.com'] def func5(): gloabl nameList nameList = [] func5() print(nameList)
概要: ローカル関数は関数内でのみ動作し、グローバル関数はコード全体で動作します。関数内でグローバル変数の値を変更したい場合は、glob を使用します。リストやディクショナリなどの特定の値のみを変更する場合は、グローバルを使用せずにグローバル変数を変更できます。
以上がPythonでローカル変数とグローバル変数を使う際の難しさを詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。