HiveNetCore.yaml module¶
yaml文件的处理模块
- class HiveNetCore.yaml.EnumYamlObjType(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[源代码]¶
基类:
Enumxml对象类型
- File = 0¶
- String = 2¶
- class HiveNetCore.yaml.SimpleYaml(yaml_obj, obj_type: EnumYamlObjType = EnumYamlObjType.File, encoding=None, use_chardet=True)[源代码]¶
基类:
objectYaml配置文件的处理
- __init__(yaml_obj, obj_type: EnumYamlObjType = EnumYamlObjType.File, encoding=None, use_chardet=True)[源代码]¶
构造函数
- 参数
yaml_obj (str) – yaml配置对象(可以为文件名或直接配置字符串)
obj_type (EnumYamlObjType) – default=EnumYamlObjType.File, 配置对象类型
encoding (string) – default=encoding, 装载字符编码, 如果传None代表自动判断
use_chardet (bool) – default=True, 当自动判断的时候, 是否使用chardet库
- classmethod dict_to_yaml(data: dict) str[源代码]¶
将字典转换为yaml字符串
- 参数
data (dict|CommentedMap) – 要处理的字典
- 返回
返回转换后的yaml字符串
- 返回类型
str
- get_value(path: str, default=None)[源代码]¶
获取指定配置路径的值
- 参数
path (str) –
配置路径字符串
注1: 从根目录开始搜索, 路径下多个key之间使用’/’分隔, 例如 ‘root/key1/key2’
注2: 可以通过[索引值]搜索特定key下第几个配置(数组或字典), 例如 ‘root/key1[0]’搜素key1下第一个对象
default (Any) – default=None, 路径不存在时的默认值
- remove(path: str)[源代码]¶
删除指定配置
- 参数
path (str) –
配置路径字符串
注1: 从根目录开始搜索, 路径下多个key之间使用’/’分隔, 例如 ‘root/key1/key2’
注2: 可以通过[索引值]搜索特定key下第几个配置(数组或字典), 例如 ‘root/key1[0]’搜素key1下第一个对象
- save(file: str = None, encoding: str = None)[源代码]¶
保存配置到文件中
- 参数
file (str) – default=None, 指定要保存的文件, 如果传None代表使用加载时的文件路径
encoding (str) – default=None, 指定要保存的文件编码, 如果传None代表使用加载文件时的编码
- set_value(path: str, val, auto_create: bool = True)[源代码]¶
设置指定配置路径的值
- 参数
path (str) –
配置路径字符串
注1: 从根目录开始搜索, 路径下多个key之间使用’/’分隔, 例如 ‘root/key1/key2’
注2: 可以通过[索引值]搜索特定key下第几个配置(数组或字典), 例如 ‘root/key1[0]’搜素key1下第一个对象
val (Any) – 要设置的值
auto_create (bool) –
搜素路径不存在时是否自动创建
注: 如果有指定索引值搜素则创建为list, 否则创建为dict
- property yaml_config¶
获取yaml配置对象 注: 为兼容OrderedDict的CommentedMap对象
@property {CommentedMap}
- property yaml_dict¶
获取yaml配置字典对象
@property {dict}
- property yaml_str¶
获取yaml配置字符串
@property {str}