python系列之:YAML语法总结
python系列之:YAML语法总结
- 一、YAML语法规则
- 二、YAML支持的数据格式
- 三、PyYAML库解析YAML格式文件
YAML是一种可读性很强的数据格式语言。
一、YAML语法规则
- YAML文件的第一行为"—",表示这是一个YAML文件
- YAML中的字段大小写敏感
- YAML与Python一样,使用缩进表示层级关系
- YAML的缩进不允许使用Tab键,只允许使用空格,且空格的数目不重要,只要相同层级的元素左侧对齐即可。
- #表示注释,从这个字符一直到行尾都会被解析器忽略
二、YAML支持的数据格式
- 对象:键值对的集合,又称为映射,类似于Python中的字典
- 数组:一组按次序排列的值,又称为序列,类似于Python中的列表
- 纯量:单个的、不可再分的值,如字符串、布尔值与数字
三、PyYAML库解析YAML格式文件
pip install PyYAML
使用YAML表示数组非常容易,只需要用-将元素按序列出即可。
---
- Apple
- Orange
- Mongo
使用PyYAML库解析YAML文件,
import yamlwith open("/Users/fei.yang4/PycharmProjects/firstProject/data.yml") as f:print(yaml.load(f,Loader=yaml.FullLoader))
输出如下所示:
[‘Apple’, ‘Orange’, ‘Mongo’]
---
name: 赵云
power: 5000
转换为python内部对象后,结果如下:
{'name': '赵云', 'power': 5000}
YAML中的对象和数组也可以任意嵌套,如下所示:
---
name: 刘备
power: 80000
foods:- apple- orange
hobby:sport: footballgame: fight
将上面的YAML文件转换为Python的内部对象,结果如下:
{'name': '刘备',
'power': 80000,
'foods': ['apple', 'orange'],
'hobby': {'sport': 'football', 'game': 'fight'}}
在YAML中定义字符串时,甚至都不需要使用单引号或双引号,直接将字符串写在文件中即可。如果字符串包含特殊字符,需要使用双引号包含起来。
python系列之:YAML语法总结相关推荐
- 【Python百日基础系列】Day02-Python语法基础
Python百日基础系列 视频讲解2-1 [Python百日基础系列]02-Python语法基础-1 视频讲解2-2 [Python百日基础系列]02-Python语法基础-2 文章目录 Python ...
- 1900页Python系列PPT分享三:选择与循环结构语法及案例(96页)
总体说明:本套PPT共约1900页,包含董付国老师Python系列图书<Python程序设计基础>(2017年7月第5次印刷).<Python程序设计(第2版)>(2017年9 ...
- ansible中yaml语法应用
4.yaml语法应用 ansible的playbook编写是yaml语言编写,掌握yaml语法是编写playbook的必要条件,格式要求和Python相似,具体教程参考如下 yaml语言教程 附上一个 ...
- csdn最新最牛最细python系列【python高阶:自动化相关技能】 python全栈自动化测试系类4-4
目录 [python之smtplib模块发送邮件] 1.tls模式加密 2.ssl加密,默认加密端口是465 MIMEApplication模块添加附件: [python编程之ini文件处理-conf ...
- Python自动化之YAML解析
准备工作 pip install PyYAML import yaml yaml语法规则 想要表示列表项,使用一个短横杠加一个空格.多个项使用同样的缩进级别作为同一列表的一部分 my_dictiona ...
- python布尔测试对象_面试题十九期-测试开发面试题之python系列-这个中~
坚持梦想 就算所有人都不支持你.这条路会很曲折,你也会一度认为是不是自己选错了,但只要坚持,就算最后没有成功,但努力了就不会有遗憾. 测试开发python系列面试题 01 单选题 1.下列哪个语句在P ...
- 【直播资料下载】Python 系列直播——深入Python与日志服务,玩转大规模数据分析处理实战第二讲...
流畅的Python数据处理及大数据处理ETL Python 系列直播--深入Python与日志服务,玩转大规模数据分析处理实战 直播讲师:丁来强(成喆)--阿里高级技术专家,从事阿里云日志服务相关的产 ...
- K8S-网络模型、POD/RC/SVC YAML 语法官方文档
2019独角兽企业重金招聘Python工程师标准>>> K8S-网络模型.POD/RC/SVC YAML 语法官方文档 博客分类: Kubernetes K8S-网络模型.POD/R ...
- k8s查看pod的yaml文件_【大强哥-k8s从入门到放弃04】Yaml语法解析
依然小福利[Python-零基础入门]2020感谢走进我的生命,Python!(已更新至206集)_哔哩哔哩 (゜-゜)つロ 干杯~-bilibiliwww.bilibili.com 一.K8S名称 ...
- 从源代码学Python系列目录
Hello,我是 Alex 007,一个热爱计算机编程和硬件设计的小白,为啥是007呢?因为叫 Alex 的人太多了,再加上每天007的生活,Alex 007就诞生了. 从源代码学Python系列 第 ...
最新文章
- DFTug - Getting Started(下篇)
- 理解动态语言inline cache优化
- CodeForces 567F DP Mausoleum
- 善于总结所做所学的内容
- 清北学堂十一培训酱油记
- linux shell的单行多行注释
- isdigit()、isalpha()、isalnum() 三个函数的区别和注意点
- ubuntu 10.10下面添加samba实现和windows共享文件
- Java 的 ArrayList 的底层数据结构
- Thread中断的理解
- 正态分布某一点的概率怎么算_正态分布的抽卡概率算法
- [转帖]VBS 教程
- SQL Server 大数据管理——数据归档(主文件备份)
- 【带机器人】在线客服系统多商户客服源码 im即时通讯聊天 带注册 自适应网页 自动回复客服
- 一阶线性齐次,非齐次方程的通解和解的结构定理,推导过程。
- 怎么把电脑上的文件备份到百度网盘?
- Translatium 19.2.1 中文版 优秀的在线翻译工具
- steam无法连接至计算机,win10系统打开steam提示无法连接至steam网络的图文方法
- uva 10537 The Toll! Revisited
- lrs_save_searched_string
热门文章
- 交叉熵和相对熵(KL散度)
- 英语单词词性顺口溜_英语单词词性顺口溜
- 解决谷歌导入Vue开发工具没反应的问题
- 深入解析CAS算法原理
- 鸟哥linux命令行总结之——文件的压缩打包和备份
- 2022年信息安全工程师考试知识点:信息安全管理基础
- engineercms整合mindoc
- 警告: git command could not be found. Please create an alias or add it to your PATH
- plc程序ST语言接近C语言,【PLC高级编程语言之ST文本】4.ST语言的运算符介绍
- android模拟器上https抓包