【python】yaml文件的读写
【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文件的读写的更多相关文章
- python之文件的读写和文件目录以及文件夹的操作实现代码
这篇文章主要介绍了python之文件的读写和文件目录以及文件夹的操作实现代码,需要的朋友可以参考下 为了安全起见,最好还是给打开的文件对象指定一个名字,这样在完成操作之后可以迅速关闭文件,防止一些无用 ...
- python对文件的读写
文件 File 什么是文件 文件是用于数据存储和单位 文件通常用来长期存储数据 文件中的数据是以字节为单位进行顺序存储的 文件的操作流程: 1. 打开文件 2. 读/写文件 3. 关闭文件 注: 任何 ...
- python CSV 文件的读写
1.CSV文件 import csv with open(r"E:\code\0_DataSet\tianchi_2015_mobile_recommand\fresh_comp_offli ...
- python之文件的读写(2)
小R昨天因为在研究weblogic的漏洞就没来得及学习python(好吧,这都是借口,懒了,大家可不能像我这样.要坚持每天都学). 这个进度是有点慢呀.哎呀,没事没事,我还年轻,才20岁. 哈哈 ...
- python之文件的读写(1)
真的崩溃,刚写完的笔记由于点错了,现在特么又要重新写了. 崩溃呀.......... 之前的废话就不再重复了,直接进入正题吧. 今天小R 学了一天的NP课程,但是python还是不能忘得,所以晚上又 ...
- Python对文件的读写操作
Python使用open函数来读写文件,open函数的第一个参数是文件名,第二个参数是可选的,有4种常见模式:(1)r 打开一个文件来读数据,这是默认模式:(2)w 打开一个文件来写数据,如果文件已有 ...
- 『无为则无心』Python基础 — 41、Python中文件的读写操作(一)
目录 1.文件操作步骤 2.文件的读写操作 (1)文件的打开 (2)打开文件模式 (3)获取一个文件对象 (4)关于文件路径 1.文件操作步骤 当我们要读取或者写入文件时,我们需要打开文件,在操作完毕 ...
- OpenCV教程(42) xml/yaml文件的读写
参考资料: http://docs.opencv.org/modules/core/doc/xml_yaml_persistence.html #include "opencv2/openc ...
- python yaml文件内容的读取
示例: (1)host_header.yaml 文件中的内容 host: https://testapp.goodiber.com/v2/ #dev1的测试环境域名 #请求接口的请求头中的共用参数 ...
- python yaml文件读写
import yaml yaml_dict={"} with open("a.yaml", "w") as f: yaml.safe_dump(yam ...
随机推荐
- visual studio 2015 IOS开发连接mac时提示错误couldn't connect to xxxx, please try again的一个方法
本人使用虚拟机MAC.原本使用虚拟机中的VS2015连接正常没有问题. 但是当把MAC的虚拟机文件COPY到另一个机器上,提示"couldn't connect to xxxx, plea ...
- ORACLE备份脚本(3-RMAN0级全备)
创建目录 mkdir -p /bak/level0 mkdir -p /bak/arch chown -R oracle:oinstall /bak/ vi rmanlevel0.sh # ...
- JavaScript Math(算数) 对象
JavaScript Math(算数) 对象 Math(算数)对象的作用是:执行常见的算数任务. 在线实例 round()如何使用 round(). random()如何使用 random() 来返回 ...
- pg copy用法
postgresql copy用法1,导出表数据1)导出test表数据到txt copy test to '/home/jinli/test.txt'; 2)导出test表数据到csv copy te ...
- 04 使用 BTrace 进行拦截调试
BTrace BTrace 可以动态地向目标应用程序的字节码注入追踪代码,使用的技术有 JavaCompilerApi, JVMTI, Agent, Instrumentation+ASM 使用方法: ...
- 实验:spring-boot整合mybatis-plus实现分页查询的功能
1.建立基于sping-boot的javaweb工程(java1.8) 按结构建立包 2.POM.XML添加支持mybatis-plus,sql,lombok <!--mybatis-plus的 ...
- UniCode 下char*转CString ,利用MultiByteToWideChar进行转换,中文乱码的解决方案
//计算char *数组大小,以字节为单位,一个汉字占两个字节 int charLen = strlen(sText); //计算多字节字符的大小,按字符计算. int len = MultiByte ...
- 使用端口排查解决启动Tomcat端口被占问题
有时候在eclipse中启动Tomcat或启动纯净版的Tomcat会出现端口被占的问题,下面菜鸟小编带大家进行端口排查解决问题.(下面假设是我的80端口被占了,如果你不知道你的Tomcat端口是多少就 ...
- 碧血剑—新修版<随笔+剧情大纲>
明末,袁崇焕含冤而死,其子袁承志为部下相救,称为山宗,其时10岁左右,机缘巧合之下救下杨鹏举和张朝唐一行.随后山宗大会,明军来攻,在朱国治,孙仲寿等人保护下逃走,学得伏虎拳.遇到安大娘,安小惠和哑巴, ...
- sql:常用:group by 多个字段
首先group by 的简单说明: group by 一般和聚合函数一起使用才有意义,比如 count sum avg等,使用group by的两个要素: (1) 出现在select后面的字段 ...