如何在 Python 的外部文件中保存全局变量?
How to save global variables in an extern file in Python?
我正在寻找在许多文件中使用全局变量的简洁方法。所以我想写一个 parameters.py 文件来存储我所有的参数。
我怎样才能做到这一点?我听说过 FLAGS
或 argparse
,但我不明白如何使用它们。谁能解释一下如何构建这个逻辑,然后如何使用它来导入变量。
如果可能的话,我想使用 Tensorflow 的标准 ...
您可以简单地构建一个 settings.py
模块,其中定义的所有变量都是全局的:
var1 = 'value1'
var2 = 'value2'
...
然后在同一个项目的其他脚本或模块中,你可以简单地引用这些全局变量:
import settings
print(settings.var1)
print(settings.var2)
...
另一种选择是使用众所周知格式的配置文件:
然后你可以像这样引入变量
with open('path/to/config/file.json') as f:
global_vars = json.load(f)
setting1 = global_vars['setting1']
# etc
你也可以使用 configparser
params.ini:
[SECTION1]
var1 = 55
main.py
import configparser
config = configparser.ConfigParser()
config.read('params.ini')
var = config["SECTION1"]["var1"]
我正在寻找在许多文件中使用全局变量的简洁方法。所以我想写一个 parameters.py 文件来存储我所有的参数。
我怎样才能做到这一点?我听说过 FLAGS
或 argparse
,但我不明白如何使用它们。谁能解释一下如何构建这个逻辑,然后如何使用它来导入变量。
如果可能的话,我想使用 Tensorflow 的标准 ...
您可以简单地构建一个 settings.py
模块,其中定义的所有变量都是全局的:
var1 = 'value1'
var2 = 'value2'
...
然后在同一个项目的其他脚本或模块中,你可以简单地引用这些全局变量:
import settings
print(settings.var1)
print(settings.var2)
...
另一种选择是使用众所周知格式的配置文件:
然后你可以像这样引入变量
with open('path/to/config/file.json') as f:
global_vars = json.load(f)
setting1 = global_vars['setting1']
# etc
你也可以使用 configparser
params.ini:
[SECTION1]
var1 = 55
main.py
import configparser
config = configparser.ConfigParser()
config.read('params.ini')
var = config["SECTION1"]["var1"]