Python读取YAML文件过程详解

yipeiwu_com6年前Python基础

这篇文章主要介绍了Python读取YAML文件过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

YAML语法 学习手册

Python读取方法:

import yaml
with open('demo1.yaml', 'r', encoding='utf-8') as f:
  file_content = f.read()
content = yaml.load(file_content, yaml.FullLoader)
print(content)

demo1.yaml

- 123             # int
- 3.14            # float
- true            # bool,不区分大小写
- False            # bool
- string           # 字符串
- ''             # 空字符串
- ~              # ~代表 null,Python中的 None
-               # 同上
- 2019-12-12         # date
- 2019-12-12T14:59:59+08:00  # datetime
- name: Miles         # dict
 age: 22

使用以上方法后的结果是一个列表,手动换行了方便阅读:

[
 123,
 3.14,
 True,
 False,
 'string',
 '',
 None,
 None,
 datetime.date(2019, 12, 12),
 datetime.datetime(2019, 12, 12, 6, 59, 59),
 {'name': 'Miles', 'age': 22}
]

demo2.yaml

name: Miles
age: 18
single: true
dream: ~
lucky number:
 - 8
 - 9
 - 12

这种形式经过方法读取是一个字典:

{
 'name': 'Miles',
 'age': 18,
 'single': True,
 'dream': None,
 'lucky number':[8, 9, 12]
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python 字符串转换为整形和浮点类型的方法

Python2.6 之前:字符串转换为整形和浮点型 >>>import string >>>string.atoi('34.1') 34 &...

python实现Dijkstra算法的最短路径问题

python实现Dijkstra算法的最短路径问题

迪杰斯特拉(Dijkstra)算法主要是针对没有负值的有向图,求解其中的单一起点到其他顶点的最短路径算法。 1 算法原理 迪杰斯特拉(Dijkstra)算法是一个按照路径长度递增的次序产...

详解django+django-celery+celery的整合实战

详解django+django-celery+celery的整合实战

本篇文章主要是由于计划使用django写一个计划任务出来,可以定时的轮换值班人员名称或者定时执行脚本等功能,百度无数坑之后,终于可以凑合把这套东西部署上。本人英文不好,英文好或者希望深入...

Python异步操作MySQL示例【使用aiomysql】

本文实例讲述了Python异步操作MySQL。分享给大家供大家参考,具体如下: 安装aiomysql 依赖 Python3.4+ asyncio PyMySQL 安装...

从零学python系列之数据处理编程实例(一)

要求:分别以james,julie,mikey,sarah四个学生的名字建立文本文件,分别存储各自的成绩,时间格式都精确为分秒,时间越短成绩越好,分别输出每个学生的无重复的前三个最好成绩...