【python】yaml文件的读写

冰冷的希望 2020-10-22 18:31:47 442 收藏 1
分类专栏: python 文章标签: python yaml
版权

python
专栏收录该内容
67 篇文章5 订阅
订阅专栏
我们用到更多的是json格式的读写,但是有时候需要用到yaml格式,故进行记录

1.YAML
YAML(发音/ˈjæməl/)是一个可读性高,用来表达数据序列化的格式,使用它可以简单表达列表、字典、标量等资料形式

1.1 语法规则
1)大小写敏感
2)使用缩进表示层级关系
3)缩进时不允许使用tab键,只允许使用空格
4)缩进的空格数目不重要,只要相同层级的元素左侧对齐即可

1.2 支持的数据结构
1)字典: 键值对的集合
2)数组: 一组按照次序排列的值, 又称序列(sequence)、列表
3)纯量: 单个的、不可再分的值, 包括 字符串、布尔值、整数、浮点数、null、日期

2.读写操作
2.1 先安装PyYAML
pip3 install -U PyYAML
1
2.2 写(从dict转yaml)
data = {
"data1": 123,
"data2": {
"k1": "v1",
"k2": [4, 5, 6]
}
}

with open("test.yaml", "w", encoding="utf8") as f:
yaml.dump(data, f, allow_unicode=True)
1
2
3
4
5
6
7
8
9
10
test.yaml

data1: 123
data2:
k1: v1
k2:
- 4
- 5
- 6
1
2
3
4
5
6
7
2.3 读(从yaml转dict)
import yaml

with open("test.yaml", "r", encoding="utf-8") as f:
data = yaml.load(f, Loader=yaml.FullLoader)
print(data)

打印输出
{'data1': 123, 'data2': {'k1': 'v1', 'k2': [4, 5, 6]}}
1
2
3
4
5
6
7
8

【python】yaml文件的读写的更多相关文章

  1. python之文件的读写和文件目录以及文件夹的操作实现代码

    这篇文章主要介绍了python之文件的读写和文件目录以及文件夹的操作实现代码,需要的朋友可以参考下 为了安全起见,最好还是给打开的文件对象指定一个名字,这样在完成操作之后可以迅速关闭文件,防止一些无用 ...

  2. python对文件的读写

    文件 File 什么是文件 文件是用于数据存储和单位 文件通常用来长期存储数据 文件中的数据是以字节为单位进行顺序存储的 文件的操作流程: 1. 打开文件 2. 读/写文件 3. 关闭文件 注: 任何 ...

  3. python CSV 文件的读写

    1.CSV文件 import csv with open(r"E:\code\0_DataSet\tianchi_2015_mobile_recommand\fresh_comp_offli ...

  4. python之文件的读写(2)

    小R昨天因为在研究weblogic的漏洞就没来得及学习python(好吧,这都是借口,懒了,大家可不能像我这样.要坚持每天都学).   这个进度是有点慢呀.哎呀,没事没事,我还年轻,才20岁.  哈哈 ...

  5. python之文件的读写(1)

    真的崩溃,刚写完的笔记由于点错了,现在特么又要重新写了.  崩溃呀.......... 之前的废话就不再重复了,直接进入正题吧. 今天小R 学了一天的NP课程,但是python还是不能忘得,所以晚上又 ...

  6. Python对文件的读写操作

    Python使用open函数来读写文件,open函数的第一个参数是文件名,第二个参数是可选的,有4种常见模式:(1)r 打开一个文件来读数据,这是默认模式:(2)w 打开一个文件来写数据,如果文件已有 ...

  7. 『无为则无心』Python基础 — 41、Python中文件的读写操作(一)

    目录 1.文件操作步骤 2.文件的读写操作 (1)文件的打开 (2)打开文件模式 (3)获取一个文件对象 (4)关于文件路径 1.文件操作步骤 当我们要读取或者写入文件时,我们需要打开文件,在操作完毕 ...

  8. OpenCV教程(42) xml/yaml文件的读写

    参考资料: http://docs.opencv.org/modules/core/doc/xml_yaml_persistence.html #include "opencv2/openc ...

  9. python yaml文件内容的读取

    示例: (1)host_header.yaml  文件中的内容 host: https://testapp.goodiber.com/v2/ #dev1的测试环境域名 #请求接口的请求头中的共用参数 ...

  10. python yaml文件读写

    import yaml yaml_dict={"} with open("a.yaml", "w") as f: yaml.safe_dump(yam ...

随机推荐

  1. 时钟频率(HZ)与数据传输速率(bit/s)的关系-转载

    (24条消息) 时钟频率(HZ)与数据传输速率(bit/s)的关系_子曰小玖的博客-CSDN博客_速率和频率的关系 时钟频率(HZ)与数据传输速率(bit/s)两者是相同的概念.举例:IIC传输位速率 ...

  2. axios请求拦截封装理解

    <p>全局处理请求.响应拦截的处理,常见处理请求动画,错误码</p> <p>import axios from 'axios'</p> <p> ...

  3. varchar(1)占用几个字节

    在version4之前,MySQL中varchar长度是按字节:而version5之后,按字符.如varchar(6),在version4,表示占用6个字节,而在version5中,表示占用6个字符. ...

  4. Visaul Studio 快捷方式

    1.删除光标所在行:Ctrl + shift + L : 2.剪切光标所在行:Ctrl + X : 3.在光标上方插入一行:Ctrl + Enter : 4.注释代码:Ctrl + K --> ...

  5. 【2020NIO.AC省选模拟#10】C. 寄蒜几盒

    题目链接 原题解: 可以发现,假设我们把凸多边形看做障碍,一个点没有被染色当且仅当在它的位置上能看到凸多边形任意两条相对的边中的一条(也就是能看到至少$\dfrac{n}{2}$条边). 对于每个询问 ...

  6. 使用python+poco+夜神模拟器进行自动化测试。

    https://blog.csdn.net/saint_228/article/details/84889017 网易最近出的一款自动化UI测试工具:Airtest 挺火的,还受到谷歌的推荐.我试着用 ...

  7. win10下载jdk并配置环境变量

    win10下载jdk并配置环境变量 1. jdk下载 下载官网:Java SE开发套件15.0.2 2. jdk安装 一直点下一步就可以 3. 环境变量 配置 右键我的电脑--属性--高级系统设置-- ...

  8. centos8 安装 spdk

    1. 下载 2.配置 ./configure --enable-debug --disable-tests --without-isal --without-ocf  --with-uring --w ...

  9. flask create_time update_time is_delete

    create_time = db.Column(db.DateTime, server_default=func.now()) update_time = db.Column(db.DateTime, ...

  10. python:包含’e’和‘-’的 str 转 float

    from functools import reduce def str2float(s): s = s.split('.') a = s[0] b = s[1] if a[0] == '-': a ...