Python读取YAML文件过程详解

yipeiwu_com7年前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按修改时间顺序排列文件的实例代码

python按修改时间顺序排列文件,具体代码如下所示: import os def sort_file_by_time(file_path): files = os.listdi...

windows下python安装paramiko模块和pycrypto模块(简单三步)

前言 Python中使用SSH需要用到OpenSSH,而OpenSSH依赖于paramiko模块,而paramiko模块又依赖于pycrypto模块,因此要在python中使用SSH,我...

PyQt5每天必学之布局管理

PyQt5每天必学之布局管理

在GUI编程中有一个不容忽视的部分,那就是布局管理。布局管理掌控着我们的控件在应用程序窗口如何摆放。布局管理可以通过两种方式来完成。我们可以使用绝对定位或布局类两种方法控制程序窗口中的控...

30秒轻松实现TensorFlow物体检测

Google发布了新的TensorFlow物体检测API,包含了预训练模型,一个发布模型的jupyter notebook,一些可用于使用自己数据集对模型进行重新训练的有用脚本。 使用该...

解决Pytorch 训练与测试时爆显存(out of memory)的问题

Pytorch 训练时有时候会因为加载的东西过多而爆显存,有些时候这种情况还可以使用cuda的清理技术进行修整,当然如果模型实在太大,那也没办法。 使用torch.cuda.empty_...