ホームページ >バックエンド開発 >Python チュートリアル >「pickle」または「io」を使用せずに、Python ファイル間でグローバル変数を共有するにはどうすればよいですか?
pickle または io 書き込みを使用しないファイル間でのグローバル変数の使用
グローバル変数は、プログラムの複数の部分でデータを共有する便利なメカニズムを提供します。ただし、あるファイルで定義されたグローバル変数に別のファイルからアクセスするのは難しい場合があります。
次のシナリオを考えてみましょう: 複数のファイルを含むプロジェクトがあり、それらのすべてからアクセスできるグローバル変数を定義したいとします。 .
方法 1: 間接アクセス
ファイル間でグローバル変数を使用する場合の難しさは次のとおりです。モジュールの分離。 Python のモジュールは独立して実行されるため、1 つのモジュールでグローバル変数を定義しても、そのグローバル変数が他のモジュールで自動的に使用可能になるわけではありません。
これを解決するには、settings.py などの別のファイルでグローバル変数を定義することを検討してください。 。このファイルは、グローバル変数の初期化とアクセスの提供を担当します。
# settings.py def init(): global myList myList = [] # main.py import settings settings.init() # Initialize the global variables import subfile # Import the subfile that needs access to the globals # subfile.py import settings def stuff(): settings.myList.append("hey") # Access the global variable
方法 2: 直接アクセス
もう 1 つの方法は、モジュール属性を使用して、グローバル変数を宣言します。これにより、基本的に変数がモジュールの属性として公開されます。
# settings.py myList = [] # main.py import settings import subfile # subfile.py import settings def stuff(): settings.myList.append("hey")
どちらの方法でも、複数のファイルにわたるグローバル変数にアクセスできるため、プログラム全体でのデータの一貫性が確保されます。
以上が「pickle」または「io」を使用せずに、Python ファイル間でグローバル変数を共有するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。