Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Python中保存外部文件中的全局变量?_Python_Variables_Store_Argparse_Flags - Fatal编程技术网

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

如何在Python中保存外部文件中的全局变量?,python,variables,store,argparse,flags,Python,Variables,Store,Argparse,Flags,我正在寻找一种在许多文件中使用全局变量的干净方法。因此,我想编写一个parameters.py文件,其中存储我的所有参数 我怎样才能做到这一点?我听说过标志或argparse,但我不知道如何使用它们。有人能告诉我如何构建这个逻辑,然后如何使用它来导入变量吗 我想使用Tensorflow的标准如果可能…您只需构建一个设置.py模块,其中定义的所有变量都是全局变量: var1 = 'value1' var2 = 'value2' ... 然后在同一项目的其他脚本或模块中,您可以简单地使用以下参数引

我正在寻找一种在许多文件中使用全局变量的干净方法。因此,我想编写一个parameters.py文件,其中存储我的所有参数

我怎样才能做到这一点?我听说过
标志
argparse
,但我不知道如何使用它们。有人能告诉我如何构建这个逻辑,然后如何使用它来导入变量吗


我想使用Tensorflow的标准如果可能…

您只需构建一个
设置.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"]

Perosnaly和我知道这不是你要问的,我使用一个名为varaible的csv文件作为列名。这比其他任何事情都简单(但不是最好的方法)@Alexis你应该看看blhsing的答案,这比使用两行CSV文件要简单得多。真的!但是如果您想更新这些全局变量,我不知道是否可以使用setting.py(或者至少我不知道如何做)。我会调查的,谢谢通知!