yaml文件 .yml
YAML文件简介
我们可能在spring配置文件里见到过.yml格式的东东,配置文件不都是.propertie或者.xml文件吗?.yml是什么鬼,今天我带你们来一探究竟。
YAML(Yet Another Markup Language)(发音 /ˈjæməl/ )
一种基于Unicode容易阅读,容易和脚本语言交互的,用来表达资料序列的编程语言。
适应场景
- 脚本语言:由于实现简单,解析成本很低,YAML 特别适合在脚本语言中使用
- 序列化: YAML是由宿主语言数据类型直转,的比较适合做序列化。
- 配置文件:写 YAML 要比写 XML 快得多(无需关注标签或引号),并且比 INI 文档功能更强。由于兼容性问题,不同语言间的数据流转建议不要用 YAML。
语言优点
- YAML易于人们阅读。
- YAML数据在编程语言之间是可移植的。
- YAML匹配敏捷语言的本机数据结构。
- YAML具有一致的模型来支持通用工具。
- YAML支持单程处理。
- YAML具有表现力和可扩展性。
- YAML易于实现和使用。
YAML 语法
- 使用空格 Space 缩进表示分层,不同层次之间的缩进可以使用不同的空格数目,但是同层元素一定左对齐,即前面空格数目相同(不能使用 Tab,各个系统 Tab对应的 Space 数目可能不同,导致层次混乱)
- ‘#’表示注释,只能单行注释,从#开始处到行尾
- 破折号后面跟一个空格(a dash and space)表示列表
- 用冒号和空格表示键值对 key: value
- 简单数据(scalars,标量数据)可以不使用引号括起来,包括字符串数据。用单引号或者双引号括起来的被当作字符串数据,在单引号或双引号中使用C风格的转义字符
Sequence of Scalars 简单数据列表
- Mark McGwire
- Sammy Sosa
- Ken Griffey
Mapping Scalars to Scalars 简单数据键值对以及注释
hr: 65 # Home runs
avg: 0.278 # Batting average
rbi: 147 # Runs Batted In
Mapping Scalars to Sequences 简单数据列表键值对
american:- Boston Red Sox- Detroit Tigers- New York Yankees
national:- New York Mets- Chicago Cubs- Atlanta Braves
Sequence of Mappings 键值对列表
-name: Mark McGwirehr: 65avg: 0.278
-name: Sammy Sosahr: 63avg: 0.288
YAML 还支持流类型,用中括号括起来表示列表,用逗号分隔元素;用大括号括起来表示键值对,用逗号分隔元素。
Sequence of Sequences 列表的列表
- [name , hr, avg ]
- [Mark McGwire, 65, 0.278]
- [Sammy Sosa , 63, 0.288]
Mapping of Mappings 键值对的键值对
Mark McGwire: {hr: 65, avg: 0.278}
Sammy Sosa: {hr: 63,avg: 0.288}
yaml 官方网站:http://www.yaml.org
yaml文件 .yml相关推荐
- yaml文件 *.yml 写法简介
YAML文件简介 我们可能在spring配置文件里见到过.yml格式的东东,配置文件不都是.propertie或者.xml文件吗?.yml是什么鬼,今天我带你们来一探究竟. YAML(Yet Anot ...
- YAML文件(.yml)中的键(key)通过变量引用来设置
转自:https://www.cnblogs.com/haycheng/p/13299183.html 通过变量引用设置配置量的[值](value) 在YAML文件中,一个配置量的值可以通过引用另一个 ...
- 《OpenCV3编程入门》学习笔记5 Core组件进阶(六)输入输出XML和YAML文件
第5章 Core组件进阶 5.6 输入输出XML和YAML文件 5.6.1 XML和YAML文件 XML和YAML是使用非常广泛的文件格式,可以利用XML或者YAML式的文件存储和还原各种数据结构,还 ...
- 如何在Python中解析YAML文件
如何在Python中解析YAML文件? #1楼 不依赖C标头的最简单,最纯净的方法是PyYaml( 文档 ): #!/usr/bin/env pythonimport yamlwith open(&q ...
- 利用opencv中的类FileStorage生成和读取XML和YAML文件
有时候程序中的变量值.字符串.数组等数据也需要独立于源代码本身保存,这个时候就需要用到XML和YAML文件进行保存. OpenCV4提供了用于生成和读取XML文件和YAML文件的类FileStorag ...
- OpenCV中XML文件和YAML文件的读写
OpenCV中XML文件和YAML文件的读写 代码如下: #include <opencv2/core/core.hpp> #include <iostream> #inclu ...
- android读取本地yaml文件_python笔记11-读取yaml配置文件(pyyaml)
YAML简介 YAML 是一种较为人性化的数据序列化语言,可以配合目前大多数编程语言使用. YAML 的语法比较简洁直观,特点是使用空格来表达层次结构,其最大优势在于数据结构方面的表达,所以 YAML ...
- yamlcpp遍历_OpenCV文件输入和输出使用XML和YAML文件
目标 您会找到以下问题的答案:如何使用YAML或XML文件打印和读取文本和OpenCV文本条目? OpenCV数据结构如何做同样的操作? 如何为您的数据结构做这个? 源代码 您可以从这里下载,也可以在 ...
- python生成yaml文件_Python实践34-读写yaml文件
关于yaml YAML语言的设计目标,就是方便人类读写.如果你想要实现一些用ini不好做到的配置,可以使用yaml格式作为配置文件 大小写敏感 使用缩进表示层级关系 缩进时不允许使用Tab键,只允许使 ...
最新文章
- 面试官问:对象池技术了解吗?apache common pool2呢?
- php 单一职责,读懂 SOLID 的「单一职责」原则
- burpsuite https 社区版_微软推出Visual Studio 2019 RC版 正式版预计四月到来
- spring中事务的设计和实现
- java的object_Java中的Object类详细介绍
- 如何求解单边z变换_的单边Z变换。.ppt
- tf.truncated_normal的用法
- python 选择多个文件夹_如何同时选择多个文件?
- scala seq java_Scala中的两个Seq比较
- 怎么删除已经安装的mysql_怎么样删除已经安装的mysql | wdlinux致力于Linux服务器架构,性能优化.免费CDN加速系统,免费智能DNS解析,负载均衡,集群分流...
- Thunderbolt是什么
- C++标准库::拾遗
- drool 7.x 属性 : no-loop
- 博士申请 | 澳门大学张一博教授课题组招收计算机视觉方向全奖博士生
- 让你的程序陪你的好友打会牌吧(零)
- wangEditor 粘贴从 word 复制的带图片内容的最佳实践
- Peekaboo——项目系统设计与数据库设计
- Android——广播
- cacheable更新_@Cacheable不会拦截该方法,缓存始终为空
- 2C领域最后一个资本宠儿,快看成“超新Z世代”娱乐平台
热门文章
- java实现DES加解密算法
- 解决c3p0连接数据库超时问题
- React Redux 进阶: Hooks 版本用法 Custom Context 局部 Store 实践
- SV TechClub 第四届 美女与野兽 2019区块链游戏黑客马拉松
- git push origin master报错的解决方法 常见git命令(待更新)
- Visual Studio 2022环境中C语言的使用——一维数组和二维数组
- 八维计算机学校张家口,八维学校真实校园情况?
- 课程设计题十:简易电子琴设计
- ipad iphone开发_如何在iPhone或iPad上取消应用订阅
- 服务器 php 版本低,php 版本过低 怎么修改?