我正在从事一个数据科学项目,该项目有大量的数据预处理和神经网络实现,并生成png格式的图形文件.项目由30多个python脚本组成。 我有一组通用值,我需要全局使用,几乎每个脚本。你知道吗
因此,我创建了一个config.yaml
文件来存储值,并创建了util.py
文件来读取yaml
文件并将值作为全局变量赋值。你知道吗
部分配置yaml
config:
input_src: "./input_data"
data_output: "./final_output"
tempory_src: "./tmp_files"
neural_network_model_version: "NeuralNet_v1907"
all_store_output: "/all_store"
single_store_output: "/individual"
利用率
with open('config.yaml',encoding="utf-8_sig") as f:
data = yaml.load(f, Loader=yaml.FullLoader)
global input_src
global output_src
global model_version
global all_store_output
global single_store_output
global temp_src
config=data["config"]
input_src=config["input_src"]
output_src=config["data_output"]
model_version = config["neural_network_model_version"]
all_store_output= config["all_store_output"]
single_store_output= config["single_store_output"]
导入util文件时,它包含所有全局变量。你知道吗
我知道有很多全局变量不是一个好的做法,我需要知道什么是管理这种情况的最合适和推荐的方法。你知道吗
最简单的方法可能是将所有设置放在一个字典或数据类中。你知道吗
另一种选择是使用函数加载设置,然后缓存结果:
如果您不喜欢通过挖掘字典来获取所有设置,可以将所有设置放入类的属性中,或者编写更多函数来从主设置字典中获取每个设置。你知道吗
相关问题 更多 >
编程相关推荐