如何在 Python 的外部文件中保存全局变量?

How to save global variables in an extern file in Python?

我正在寻找在许多文件中使用全局变量的简洁方法。所以我想写一个 parameters.py 文件来存储我所有的参数。

我怎样才能做到这一点?我听说过 FLAGSargparse,但我不明白如何使用它们。谁能解释一下如何构建这个逻辑,然后如何使用它来导入变量。

如果可能的话,我想使用 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"]