博客
关于我
编程杂项--yml
阅读量:512 次
发布时间:2019-03-07

本文共 1162 字,大约阅读时间需要 3 分钟。

YAML语言基础教程

简介

YAML(Yet Another Mark-up Language)是一种轻量级的标记语言,广泛应用于配置文件中。与JSON、XML等其他标记语言相比,YAML更适合用于数据配置,数据为中心,具有简洁易读的特点。

YAML基本规则

YAML具有以下基本规则:

  • 大小写敏感:键和值的大小写会影响结果。
  • 缩进表示层级关系:只能使用空格键进行缩进,禁止使用Tab键。
  • 缩进无限制:只要元素对齐即表示同一层级。
  • 注释方式:使用#表示注释。
  • 字符串处理:字符串可以不需要引号标注。

YAML数据类型

YAML支持以下数据类型:

  • 对象(映射):键值对集合,如 {key: value}。
  • 数组(列表):按顺序排列的值,如 [value1, value2, value3]。
  • 纯量:不可再分的单个值,包括字符串、布尔值、整数、浮点数、Null、时间、日期等。

YAML格式

纯量

纯量是YAML的基础,不可再分的值,常见类型包括:

  • 字符串:不需要引号包裹,可拆分多行。
str: 这是一行字符串# 转为JSON:{ "str": "这是一行字符串" }
  • 布尔值:true或false。
key1: truekey2: false
  • 整数:直接写出数字。
num: 42
  • 浮点数:支持科学计数法。
num: 3.14num: 6.8523015e+5
  • Null:表示缺失值。
null: null
  • 时间日期:可以通过特定格式化方式表示。
对象

对象键值对的表示方式:

key:  key1: value1  key2: value2

或者:

key: {key1: value1, key2: value2}
数组

数组表示方式:

  • 使用-表示单项:
pets:  - cat  - dog  - pig
  • 使用方括号表示数组:
pets: [cat, dog, pig]

支持多维数组:

array:  - [A, B, C]
引用

YAML支持锚点与别名,用于引用:

  • &:创建锚点标记。
  • <<:合并当前数据。
  • *:引用锚点。

示例:

name: &a yamlbook: *abooks:  - java  - *a  - python

转换为:

name: yamlbook: yamlbooks:  - java  - yaml  - python

高级内容

分段处理

多个文档可在一个YAML文件中使用---分隔:

spring:  profiles:    active: dev---spring:  profiles:    server:      port: 8080---spring:  profiles:    prod:      port: 8082

通过分段处理,可以管理多个配置文件。

转载地址:http://zntjz.baihongyu.com/

你可能感兴趣的文章
Python3 A*寻路算法实现
查看>>
python3 grpc安装
查看>>
python3 mysql 封装多表_python3 mysql-多表查询
查看>>
python3 mysql8_Python MySQL8.0 错误:authentication plugin 'calling_sha2_password' is not supported....
查看>>
Python关键代码总览!从Zero到Hero必看的考点
查看>>
python3 robotframework+pycharm框架搭建
查看>>
Python3 shutil模块
查看>>
Python关于strftime函数详细解析 附实战代码
查看>>
Python3 tutorial day3
查看>>
python3 week4
查看>>
Python3 创建数组
查看>>
python3 套接字异常(a byte-like object is required not str)
查看>>
python3 实现用户三次输入错误记录黑名单并对该用户登录锁定-day1
查看>>
python3 文本变图片
查看>>
Python3 查看 com 组件的属性
查看>>
python3 案例分享--发邮件
查看>>
python3 模板库_Python3 标准库概览_Python教程_我爱模板网 - 提供下载各种免费建站资源,免费网站模板,免费网页特效,让你爱上建站!...
查看>>
Python3 求最大/小值及索引值 Numpy
查看>>
python3+django使用celery执行某些任务失败的解决方案
查看>>
Python3+Requests+Unittest实战系列【一】
查看>>