thermoelasticsim.core.config 源代码

# 文件名: config.py
# 作者: Gilbert Young
# 修改日期: 2025-03-27
# 文件描述: 提供 ConfigManager 类,用于加载和获取配置文件中的参数。

"""
配置模块

包含 ConfigManager 类,用于加载和管理 YAML 格式的配置文件

Classes:
    ConfigManager: 加载和访问配置文件的配置管理器
"""

from typing import Any

import yaml


[文档] class ConfigManager: """加载和管理 YAML 配置文件的配置管理器 Attributes ---------- config : dict 存储加载的配置数据 """
[文档] def __init__(self, config_file: str) -> None: """初始化配置管理器并加载配置文件 Parameters ---------- config_file : str 配置文件的路径 Raises ------ FileNotFoundError 如果配置文件不存在 yaml.YAMLError 如果配置文件不是有效的YAML格式 """ self.config = self.load_config(config_file)
[文档] @staticmethod def load_config(config_file: str) -> dict[str, Any]: """从 YAML 文件加载配置数据 Parameters ---------- config_file : str 配置文件的路径 Returns ------- dict 包含配置数据的字典 Raises ------ FileNotFoundError 如果配置文件不存在 yaml.YAMLError 如果配置文件不是有效的YAML格式 Notes ----- 使用yaml.safe_load()来避免潜在的安全问题 """ with open(config_file) as f: config = yaml.safe_load(f) return config
[文档] def get(self, key: str, default: Any | None = None) -> Any: """获取配置参数的值 Parameters ---------- key : str 要获取的配置键名 default : Any, optional 如果键不存在时返回的默认值 (默认: None) Returns ------- Any 配置值或默认值 """ return self.config.get(key, default)