Python でアプリケーションを作成するとき、同じグローバル変数が複数のファイル間で渡される状況に遭遇することがあります。以下の記事ではPythonでのクロスファイルグローバル変数の実装方法を中心に紹介していますので、ぜひ参考にしてみてください。
C言語では変数を最初に宣言してから使用する必要があるため、次のように現在使用されている変数がグローバルかローカルかを明確に知ることができます:
int a = 5; void test(void) { a = 1; // 没有先声明,所以用的是全局的变量a } void test1(void) { int a; a = 2; // 前面声明了,所以用的是局部变量a,对其所做的修改不会影响全局变量a } void main(void) { printf("before: a = %d\n", a); test(); printf("after test: a = %d\n", a); test1(); printf("after test1: a = %d\n", a); }
Pythonでは変数は宣言する必要がありませんまず直接使用してください。
Python でのクロスファイル グローバル変数の実装
Python の global キーワードは変数をグローバル変数として定義できますが、これは 1 つのモジュール (py ファイル) でグローバル変数を呼び出し、さらに別のモジュールで再度グローバル変数を呼び出すことに限定されます。別の py ファイル この py モジュールには x という変数がないため、グローバル x を使用してアクセスすることもできず、未定義のエラーが報告されます。
グローバル キーワードの考え方を学ぶと、ファイル内で有効になるため、グローバル変数専用の「グローバル変数管理モジュール」を定義するだけで済みます
グローバル変数管理モジュール globalvar.py
#!/usr/bin/python # -*- coding: utf-8 -*- def _init(): global _global_dict _global_dict = {} def set_value(name, value): _global_dict[name] = value def get_value(name, defValue=None): try: return _global_dict[name] except KeyError: return defValue
A グローバル変数 A.PY
RReeeを設定します グローバル変数 B.Py
#!/usr/bin/python # -*- coding: utf-8 -*- import sys import globalvar as gl gl._init() gl.set_value('name', 'cc') gl.set_value('score', 90)
メインプログラム Main.py
rreeeを取得し、メインプログラムファイル python を実行します結果は cc: 90
関連する推奨事項:
以上がPython でファイル間グローバル変数を実装する方法の分析例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。