python操作yaml说明

  • Post category:Python

下面是关于“Python操作YAML”的完整攻略:

什么是YAML?

YAML(发音为 “yaml” 或 “yam-ell”)是一种人类可读的数据序列化格式,设计得很简洁和易于阅读。它广泛用于配置文件、数据交换和数据交互。YAML(YAML Ain’t Markup Language)是一种类似于JSON、XML格式的数据格式。

YAML基础语法说明

YAML有以下基本的语法规则:

  • 使用缩进表示层级关系,缩进只能使用空格。
  • 使用“-”+空格表示一个列表项。
  • 使用“:”+空格表示一个键值对。

以下是一个YAML基础示例:

# 示例1
name: Jack
age: 25
address:
  - city: New York
    zipcode: 10001
  - city: Los Angeles
    zipcode: 90001

Python中操作YAML

Python提供了PyYAML库来操作YAML格式的数据。PyYAML在安装后,即可在Python中使用。

下面是使用PyYAML模块解析YAML数据的一个示例:

import yaml

yaml_str = """
name: Jack
age: 25
address:
  - city: New York
    zipcode: 10001
  - city: Los Angeles
    zipcode: 90001
"""

data = yaml.safe_load(yaml_str)
print(data)

输出结果如下:

{'name': 'Jack', 'age': 25, 'address': [{'city': 'New York', 'zipcode': 10001}, {'city': 'Los Angeles', 'zipcode': 90001}]}

下面是使用PyYAML模块将Python数据转换成YAML格式的一个示例:

import yaml

data = {
    'name': 'Jack',
    'age': 25,
    'address': [
        {
            'city': 'New York',
            'zipcode': 10001
        },
        {
            'city': 'Los Angeles',
            'zipcode': 90001
        }
    ]
}

yaml_str = yaml.dump(data)
print(yaml_str)

输出结果如下:

name: Jack
age: 25
address:
- city: New York
  zipcode: 10001
- city: Los Angeles
  zipcode: 90001

总结

本文主要介绍了Python操作YAML的基础语法和示例。在实际开发中,我们可以根据实际需要,使用PyYAML库进行YAML数据的解析、转换和生成。