pyyaml模块在python中用于处理yaml格式数据,主要使用yaml.safe_dump()、yaml.safe_load()函数将python值和yaml格式数据相互转换。当然也存在yaml.dump()、yaml.load()函数,同样能实现数据转换功能,只是官方不太推荐使用。官方给出的解释,因为yaml.safe_dump()、yaml.safe_load() 能够:
Resolve only basic YAML tags. This is known to be safe for untrusted input.
下面对yaml.safe_dump()、yaml.safe_load()函数的用法进行说明。
将一个python值转换为yaml格式文件,示例如下:
import yaml dict_data = {‘a‘: 1, ‘b‘: 2} with open(‘data.yaml‘, ‘w‘, encoding=‘UTF-8‘) as yaml_file: yaml.safe_dump(dict_data, yaml_file)
如果上述yaml.dump()中不带第二个参数,则会返回一个类似yaml格式的字符串
import yaml dict_data = {‘a‘: 1, ‘b‘: 2} yaml_string = yaml.safe_dump(dict_data) print(type(yaml_string)) print(yaml_string)
运行结果:
<class ‘str‘> a: 1 b: 2
将yaml格式文件转换为python值,接第一例子,示例如下:
import yaml with open(‘data.yaml‘, encoding=‘UTF-8‘) as yaml_file: data = yaml.safe_load(yaml_file) print(type(data)) print(data)
运行结果:
<class ‘dict‘> {‘a‘: 1, ‘b‘: 2}
原文:https://www.cnblogs.com/zhuosanxun/p/11376545.html