📌  相关文章
📜  data = _load_config(project_path).get("project_structure", {}) AttributeError: 'NoneType' object has no attribute 'get' (1)

📅  最后修改于: 2023-12-03 14:40:37.441000             🧑  作者: Mango

关于 'NoneType' object has no attribute 'get' 错误

当我们尝试使用一个 NoneType 类型的对象调用 get 方法时,就会出现这个错误。这通常意味着 _load_config 函数的返回值为 None,而非一个字典类型的对象。

项目结构介绍

本项目使用了配置文件来定义项目结构,具体格式如下:

{
    "project_structure": {
        "data_path": "data",
        "model_path": "models",
        "result_path": "results"
    }
}

其中, "data_path" 定义了训练和测试数据的存放路径; "model_path" 定义了模型文件的存放路径; "result_path" 定义了模型预测结果的存放路径。

我们将这些路径封装在一个字典中,方便在其他部分引用。

使用示例

project_path = "/path/to/project"
data = _load_config(project_path).get("project_structure", {})
data_path = data.get("data_path", "data")
model_path = data.get("model_path", "models")
result_path = data.get("result_path", "results")

在上面的示例中,我们首先加载项目配置文件,并获取 "project_structure" 参数对应的字典数据。如果不存在这个参数,就使用一个空字典来代替。接着,我们使用 get 方法获取数据路径,并在数据路径不存在时返回默认值。