yaml使用
yml使用
安装yaml
pip install PyYaml
yaml基本规则
# 1.大小写敏感
# 2.使用缩进表示层级关系,
# 2.1 不能使用tab进行缩进,只能使用空格
# 2.2 缩进的空格数目不重要,只有相同层级的元素左对齐即可
# 3.冒号后面要空一格
yaml转字典
# yml转字典
name: 小肥牛
age: 28
job: It
# >>> {'name': '小肥牛', 'age': 28, 'job': 'It'}
yaml转列表
# yml转列表
- 蓝色
- 紫色
# >>> ['蓝色', '紫色']
复合结构
- name: 小肥牛
age: 28
job: it
# >>> [{'name': '小肥牛', 'age': 28, 'job': 'it'}]
- name: 小肥牛
age: 28
job: it
date: 2022-08-06
- name: 大大
age: 28
job: it
# >>> [{'name': '小肥牛', 'age': 28, 'job': 'it'}, {'name': '大大', 'age': 28, 'job': 'it'}]
name:
- 200
- null # None要写成null,也可用~来表示
# >>> {'name': [200, 200]}
name: [1,2,3]
# >>> {'name': [1, 2, 3]}
引用
& 定义变量
*
引用变量
name: &name 灰蓝
testet: *name
# 相当于
name: 灰蓝
tester: 灰蓝
# >>> {'name': '灰蓝', 'testet': '灰蓝'}
强制转换
str: !!str 3.14
int: !!int "123"
# >>> {'str': '3.14', 'int': 123}
# 将"123"转换成123,将int 3.14转换成字符串
分段
---
str: !!str 3.14
int: !!int "123"
---
name: 汤姆
age: 19
# 分段以后,使用load_all() 返回一个迭代器,使用for来输出
result = yaml.safe_load_all(f.read())
result = yaml.safe_load_all(f.read())
for i in result:
print(i)
yaml格式用例
-
url: /api/user/login
method: post
detail: 正常登录
data:
username: xxxx
passwd: xxxx
check:
userId: aa
sign: bbb
-
url: /api/user/login
method: post
detail: 不传密码
data:
username: xxxx
passwd: xxxx
check:
userId: aa
sign: bbb
# >>> [{'url': '/api/user/login', 'method': 'post', 'detail': '正常登录', 'data': {'username': 'xxxx', 'passwd': 'xxxx'}, 'check': {'userId': 'aa', 'sign': 'bbb'}}, {'url': '/api/user/login', 'method': 'post', 'detail': '不传密码', 'data': {'username': 'xxxx', 'passwd': 'xxxx'}, 'check': {'userId': 'aa', 'sign': 'bbb'}}]
yaml使用的更多相关文章
- C#与yaml解析
YAML 官方网站称 YAML 是"一种所有编程语言可用的友好的数据序列化标准".YAML Ain't Markup Language,和GNU一样,YAML是一个递归着说&quo ...
- SpringBoot中yaml配置对象
转载请在页首注明作者与出处 一:前言 YAML可以代替传统的xx.properties文件,但是它支持声明map,数组,list,字符串,boolean值,数值,NULL,日期,基本满足开发过程中的所 ...
- YAML 语法
YAML 语法 来源:yaml 这个页面提供一个正确的 YAML 语法的基本概述, 它被用来描述一个 playbooks(我们的配置管理语言). 我们使用 YAML 是因为它像 XML 或 JSON ...
- golang使用yaml格式解析构建配置文件
现在主流的配置文件格式有这么几种,xml.yaml.config… xml就算了,太挫了,太土, 太繁琐… config 就是mysql,apache my.cnf的那种格式,这个格式适合功能分层, ...
- yaml
YAML http://baike.baidu.com/link?url=Jqbh_SBnlVuP0dPCknzd5ti5jr4h9HcacA0j56ztf4QsPcXI8kvgFaKpvhRG3em ...
- Cassandra 配制 cassandra.yaml
一.设置用户名和密码 修改cassandra.yaml配置文件 把默认的 authenticator: AllowAllAuthenticator 改成 authenticator: Password ...
- 雅美尓(yaml)实战
献给跟我一样对yaml(雅美尓)有婶婶挫败感的同学! 开始第一个pylon工程,我们就跟yaml配置文件开始了不解之缘.yaml是什么?它有哪些规则? 大IBM的文章如是说:YAML 是一种比 XML ...
- 用Yaml文件进行元素管理【转】
原文:http://www.cnblogs.com/milanmi/p/4636503.html 如界面有一个按钮,id号是test.如果进行对象化的话,就是test.click就可以了.不用每次都要 ...
- Java使用snakeyaml解析yaml
YAML Yaml是一种"是一个可读性高并且容易被人类阅读,容易和脚本语言交互,用来表达资料序列的编程语言."类似于XML但比XML更简洁,语法详见 http://www.ruan ...
- JSON+YAML初步学习+ciscoconfparse
Git git clone 在github.com右上角点击加号创建新的repository 在Linux或Mac命令行下,找到你想存放这个repository的目录,然后git clone 某个re ...
随机推荐
- springboot中,子项目的boot依赖全部爆红
应仔细检查父项目的dependencyManagement是否指定了打包方式<type>为pom,<scope>为import
- Linux-shell笔记1
一次执行很多命令,可以用:分割每个命令,依次运行所有命令.但是不是进程列表,要用()包围命令才是进程列表.它们有什么差别呢?进程列表是启动了一个子SHELL来执行的.用echo $BASH_SUBSH ...
- 【HTML】学习路径3-段落标签和标题标签
第一章:标题标签 <h1> </h1> <h2> </h2> 等等... 数字越大,字体尺寸越小. <!--标题会加粗.独占一行--> ...
- 网卡限速工具之WonderShaper
GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. GreatSQL是MySQL的国产分支版本,使用上与MySQL一致. 什么是WonderShaper 如何安装Wonder ...
- Windows 系统 PostgreSQL 手工安装配置方法
自从2020年底开始接触 PostgreSQL 以来就喜欢上了这个数据库,个人感觉比 MySQL 好用,多表联合查询性能好很多,同时也不存在 SQLServer 的版权授权费用问题.搭配 .NET 开 ...
- C语言小游戏: 推箱子 支线(一)--1
好家伙,考完试了 回顾一下2021 回顾一下某次的作业 妙啊 所以, 做一个推箱子小游戏 1.先去4399找一下关卡灵感 就它了 2.在百度上搜几篇推箱子, 参考其中的"■ ☆"图 ...
- 在Windows客户端自动设置AD用户头像
Windows现在可以设置用户头像,并在开始菜单显示.如果你安装了Exchange或者Lync,那么可以在Outlook或者Skype里看到用户的头像.这个图片是存储在AD用户属性里的.对于桌面电脑的 ...
- 邮箱的代理发送Send as权限不生效
邮箱的代理发送Sendas权限不生效 最近,有需求为用户添加其它邮箱的代理发送Sendas权限.在Exchange的管理单元里添加完毕后,发现没有效果,客户端提示你没有权限以用户的名义发送邮件 ...
- js 数组中的方法
<!DOCTYPE html><html><head> <title>数组的方法</title> <meta charset=&quo ...
- 使用filebeat过滤掉部分字段
host,agent,ecs三个字段也是不让drop的 processors: - drop_fields: fields: ["log","input",&q ...