写点什么

软件测试 / 测试开发丨 Python 常用第三方库 yaml

作者:测试人
  • 2023-08-14
    北京
  • 本文字数:725 字

    阅读完需:约 2 分钟

免费领取:测试资料+测试用例+简历模板+测试文档

本文为霍格沃兹测试开发学社学员学习笔记分享

原文链接:https://ceshiren.com/t/topic/26331

YAML

  • 一种数据序列化格式

  • 用于人类的可读性和与脚本语言的交互

  • 一种被认为可以超越 XML、JSON 的配置文件

YAML 基本语法规则

  • 大小写敏感

  • 使用缩进表示层级关系

  • 缩进时不允许使用 Tab 键,只允许使用空格

  • 缩进的空格数目不重要,只要相同层级的元素左侧对齐即可

  • # 表示注释,从这个字符一直到行尾,都会被解析器忽略

YAML 支持的数据结构

  • 对象:键值对的集合,用冒号 “:” 表示

  • 数组:一组按次序排列的值,前加 “-”

  • 纯量:单个的、不可再分的值字符串布尔值整数浮点数 Null 时间日期

# 编程语言languages:  - PHP  - Java  - Python book:  Python入门: # 书籍名称    price: 55.5    author: Lily    available: True    repertory: 20    date: 2018-02-17  Java入门:    price: 60    author: Lily    available: False    repertory: Null    date: 2018-05-11
复制代码

PyYAML

  • Python 的 YAML 解析器和生成器

  • 官网:PyYAML · PyPI

  • 安装:pip install pyyaml

创建 yaml 文件

import yaml
data = { "client": {"default-character-set": "utf8"}, "mysql": {"user": 'root', "password": 123}, "custom": { "user1": {"user": "张三", "pwd": 666}, "user2": {"user": "李四", "pwd": 999}, }}# 直接 dump 可以把对象转为 YAML 文档with open('./my.yaml', 'w', encoding='utf-8') as f: yaml.dump(data, f, allow_unicode=True)
复制代码

读取 yaml 文件

import yaml
file_path = './my.yaml'
with open(file_path, 'r', encoding='utf-8') as f: data = yaml.safe_load(f)print(data)
复制代码


用户头像

测试人

关注

专注于软件测试开发 2022-08-29 加入

霍格沃兹测试开发学社,测试人社区:https://ceshiren.com/t/topic/22284

评论

发布
暂无评论
软件测试/测试开发丨Python 常用第三方库 yaml_Python_测试人_InfoQ写作社区