HiveNetCore.yaml module

yaml文件的处理模块

class HiveNetCore.yaml.EnumYamlObjType(value)[源代码]

基类:enum.Enum

xml对象类型

File = 0
String = 2
class HiveNetCore.yaml.SimpleYaml(yaml_obj, obj_type: HiveNetCore.yaml.EnumYamlObjType = EnumYamlObjType.File, encoding=None, use_chardet=True)[源代码]

基类:object

Yaml配置文件的处理

__init__(yaml_obj, obj_type: HiveNetCore.yaml.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: Optional[str] = None, encoding: Optional[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}

classmethod yaml_to_dict(yaml_str: str, support_comments: bool = False) dict[源代码]

将yaml字符串转换为字典格式

参数
  • yaml_str (str) – yaml字符串

  • support_comments (bool) –

    default=False, 是否支持注释

    注: 如果支持注释, 返回的对象为兼容dict方法的CommentedMap对象

返回

返回字典对象

返回类型

dict