Python读写yaml文件

  • Post category:Python

下面是详细讲解Python读写YAML文件的完整攻略:

什么是YAML文件

YAML全称为”YAML Ain’t Markup Language”,是一种轻量级的标记语言,可读性强,可用于编写配置文件、数据序列化、语言间通讯等。YAML和JSON类似,但是更加易读、灵活、人性化。

安装PyYAML模块

在Python中读写YAML文件需要使用PyYAML这个第三方模块。安装方法如下:

pip install pyyaml

读取YAML文件

下面是读取YAML文件的示例代码:

import yaml

# 读取YAML文件
with open("config.yaml", "r", encoding="utf-8") as f:
    # 将YAML文件内容反序列化为Python对象
    config = yaml.safe_load(f)

# 输出Python对象
print(config)

其中,我们使用open函数打开YAML文件,然后使用yaml.safe_load函数将YAML文件内容反序列化为Python对象。这里使用的是safe_load函数,是因为YAML文件中可能存在一些Python语言的表达式,使用load函数可能存在安全问题,而safe_load函数只能反序列化最基本的Python类型。

写入YAML文件

下面是写入YAML文件的示例代码:

import yaml

# 定义Python对象
config = {"name": "John", "age": 25, "hobbies": ["hiking", "reading"]}

# 将Python对象序列化为YAML格式字符串
yaml_str = yaml.dump(config)

# 将YAML格式字符串写入文件
with open("config.yaml", "w", encoding="utf-8") as f:
    f.write(yaml_str)

其中,我们先定义了一个Python对象,然后使用yaml.dump函数将Python对象序列化为YAML格式字符串,最后使用open函数打开文件进行写入操作。

总结

本文详细讲解了如何在Python中读写YAML文件,包括安装PyYAML模块、读取YAML文件、写入YAML文件等步骤,并给出了两个示例说明。希望对读者有所帮助。