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使用的更多相关文章

  1. C#与yaml解析

    YAML 官方网站称 YAML 是"一种所有编程语言可用的友好的数据序列化标准".YAML Ain't Markup Language,和GNU一样,YAML是一个递归着说&quo ...

  2. SpringBoot中yaml配置对象

    转载请在页首注明作者与出处 一:前言 YAML可以代替传统的xx.properties文件,但是它支持声明map,数组,list,字符串,boolean值,数值,NULL,日期,基本满足开发过程中的所 ...

  3. YAML 语法

    YAML 语法 来源:yaml 这个页面提供一个正确的 YAML 语法的基本概述, 它被用来描述一个 playbooks(我们的配置管理语言). 我们使用 YAML 是因为它像 XML 或 JSON ...

  4. golang使用yaml格式解析构建配置文件

    现在主流的配置文件格式有这么几种,xml.yaml.config…  xml就算了,太挫了,太土, 太繁琐… config 就是mysql,apache my.cnf的那种格式,这个格式适合功能分层, ...

  5. yaml

    YAML http://baike.baidu.com/link?url=Jqbh_SBnlVuP0dPCknzd5ti5jr4h9HcacA0j56ztf4QsPcXI8kvgFaKpvhRG3em ...

  6. Cassandra 配制 cassandra.yaml

    一.设置用户名和密码 修改cassandra.yaml配置文件 把默认的 authenticator: AllowAllAuthenticator 改成 authenticator: Password ...

  7. 雅美尓(yaml)实战

    献给跟我一样对yaml(雅美尓)有婶婶挫败感的同学! 开始第一个pylon工程,我们就跟yaml配置文件开始了不解之缘.yaml是什么?它有哪些规则? 大IBM的文章如是说:YAML 是一种比 XML ...

  8. 用Yaml文件进行元素管理【转】

    原文:http://www.cnblogs.com/milanmi/p/4636503.html 如界面有一个按钮,id号是test.如果进行对象化的话,就是test.click就可以了.不用每次都要 ...

  9. Java使用snakeyaml解析yaml

    YAML Yaml是一种"是一个可读性高并且容易被人类阅读,容易和脚本语言交互,用来表达资料序列的编程语言."类似于XML但比XML更简洁,语法详见 http://www.ruan ...

  10. JSON+YAML初步学习+ciscoconfparse

    Git git clone 在github.com右上角点击加号创建新的repository 在Linux或Mac命令行下,找到你想存放这个repository的目录,然后git clone 某个re ...

随机推荐

  1. Sum (欧拉定理)

    题面 提示:无限输入 题解 一看这题的数据 ............................... 这也太大了,必须边输入边取模才行, 但是式子很复杂,所以必须推出一些结论. 因为Xk是有顺序 ...

  2. SpringMVC 03: 请求和响应的乱码解决 + SpringMVC响应Ajax请求

    请求或响应的中文乱码问题 tomcat9解决了get请求和响应的中文乱码问题,但是没有解决post请求或响应的中文乱码问题 tomcat10解决了get和post请求以及响应的中文乱码问题 考虑到实际 ...

  3. KingbaseES 数据库连接断开问题排查思路

    用户在使用数据库过程中,经常会发现如果会话空闲一段时间,会话有可能断开,需要重连.这个问题影响因素很多,包括数据库参数设置.操作系统参数.防火墙等.以下介绍KingbaseES针对该问题的排查思路. ...

  4. 手写tomcat——编写一个提供servlet能力的 http服务器

    点击查看代码 package com.grady.diytomcat; import com.grady.diytomcat.handler.RequestHandler; import org.do ...

  5. linux下安装Elasticsearch(单机版和集群版)

    一.linux下安装Elasticsearch(单机) 1.软件下载 下载地址:https://www.elastic.co/cn/downloads/past-releases/elasticsea ...

  6. 输入法词库解析(六)QQ 拼音分类词库.qpyd

    详细代码:https://github.com/cxcn/dtool 前言 .qpyd 是 QQ 拼音输入法 6.0 以下版本所用的词库格式,可以在 http://cdict.qq.pinyin.cn ...

  7. Kibana插件

    附加的功能在 Kibana 中是以插件的形式提供的.您可以利用 bin/kibana-plugin 命令来管理这些模块.您也可以手动安装这些插件,只需要将这些插件包放到 plugins 目录并解压到新 ...

  8. Kibana探索数据(Discover)详解

    设置时间过滤器 时间过滤器按照指定的时间段展示搜索结果.设置了 index contains time-based events 和 time-field 的索引模式可以使用时间过滤器. 时间过滤器默 ...

  9. kubernetes 查看pod 的容器日志

    1.pod若处于运行状态,则通过kubectl logs 即可 # 查看指定pod的日志 kubectl logs <pod_name> kubectl logs -f <pod_n ...

  10. 举例:Network Policies

    本文描述了如何在 Kubernetes 集群中通过创建 NetworkPolicy 的方式来声明网络策略,以管理 Pod 之间的网络通信流量. 前提条件 创建一个Deployment并配置Servic ...