第七章 yaml格式

2023-11-18

一、简单说明

yaml是一个可读性高,用来表达数据序列的格式。YAML 的意思其实是:仍是一种标记语言,但为了强调这种语言以数据做为中心,而不是以标记语言为重点

二、基本语法

缩进时不允许使用Tab键,只允许使用空格缩进的空格

数目不重要,只要相同层级的元素左侧对齐即可

# 标识注释,从这个字符一直到行尾,都会被解释器忽略

三、YAML 支持的数据结构

对象:键值对的集合,又称为映射(mapping/ 哈希(hashes/ 字典(dictionary

数组:一组按次序排列的值,又称为序列(sequence/ 列表(list

纯量(scalars):单个的、不可再分的值

四、写法

1对象类型

对象的一组键值对,使用冒号结构表示

name: Steve

age: 18

Yaml 也允许另一种写法,将所有键值对写成一个行内对象

hash: { name: Steve, age: 18 }

2数组类型

一组连词线开头的行,构成一个数组

animal

- Cat

- Dog

数组也可以采用行内表示法

animal: [Cat, Dog]

3复合结构

对象和数组可以结合使用,形成复合结构

languages:

- Ruby

- Perl

- Python

websites:

YAML: yaml.org

Ruby: ruby-lang.org

Python: python.org

Perl: use.perl.org

 

4纯量

纯量是最基本的、不可再分的值。以下数据类型都属于纯量

1 字符串 布尔值 整数 浮点数 Null

2 时间 日期

数值直接以字面量的形式表示

number: 12.30

 

布尔值用truefalse表示

isSet: true

 

null~ 表示

parent: ~

 

时间采用 ISO8601 格式

iso8601: 2001-12-14t21:59:43.10-05:00

 

日期采用复合 iso8601 格式的年、月、日表示

date: 1976-07-31

 

YAML 允许使用两个感叹号,强制转换数据类型

e: !!str 123

f: !!str true

 

5字符串

字符串默认不使用引号表示

str: 这是一行字符串

 

如果字符串之中包含空格或特殊字符,需要放在引号之中

str: '内容:字符串'

 

单引号和双引号都可以使用,双引号不会对特殊字符转义

s1: '内容\n字符串'

s2: "内容\n字符串"

 

单引号之中如果还有单引号,必须连续使用两个单引号转义

str: 'labor''s day'

 

字符串可以写成多行,从第二行开始,必须有一个单空格缩进。换行符会被转为空格

str: 这是一段

多行

字符串

多行字符串可以使用|保留换行符,也可以使用>折叠换行

this: |

Foo

Bar

that: >

Foo

Bar

+ 表示保留文字块末尾的换行,- 表示删除字符串末尾的换行+也为默认值)

s1: |

Foo

s2: |+

Foo

s3: |-

  Foo

 

链接:https://www.bilibili.com/video/av66617940/?p=16

 

转载于:https://www.cnblogs.com/LiuQizhong/p/11551243.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

第七章 yaml格式 的相关文章

  • InterfaceError:连接已关闭(使用 django + celery + Scrapy)

    当我在 Celery 任务中使用 Scrapy 解析函数 有时可能需要 10 分钟 时 我得到了这个信息 我用 姜戈 1 6 5 django celery 3 1 16 芹菜 3 1 16 psycopg2 2 5 5 我也使用了psyc
  • 如何在 Sublime Text 2 的 OSX 终端中显示构建结果

    我刚刚从 TextMate 切换到 Sublime Text 2 我非常喜欢它 让我困扰的一件事是默认的构建结果显示在 ST2 的底部 我的程序产生一些很长的结果 显示它的理想方式 如在 TM2 中 是并排查看它们 如何在 Mac 操作系统
  • 如何等到 Excel 计算公式后再继续 win32com

    我有一个 win32com Python 脚本 它将多个 Excel 文件合并到电子表格中并将其另存为 PDF 现在的工作原理是输出几乎都是 NAME 因为文件是在计算 Excel 文件内容之前输出的 这可能需要一分钟 如何强制工作簿计算值
  • Python tcl 未正确安装

    我刚刚为 python 安装了graphics py 但是当我尝试运行以下代码时 from graphics import def main win GraphWin My Circle 100 100 c Circle Point 50
  • 如何使用装饰器禁用某些功能的中间件?

    我想模仿的行为csrf exempt see here https docs djangoproject com en 1 11 ref csrf django views decorators csrf csrf exempt and h
  • 在 NumPy 中获取 ndarray 的索引和值

    我有一个 ndarrayA任意维数N 我想创建一个数组B元组 数组或列表 其中第一个N每个元组中的元素是索引 最后一个元素是该索引的值A 例如 A array 1 2 3 4 5 6 Then B 0 0 1 0 1 2 0 2 3 1 0
  • 使用 Pycharm 在 Windows 下启动应用程序时出现 UnicodeDecodeError

    问题是当我尝试启动应用程序 app py 时 我收到以下错误 UnicodeDecodeError utf 8 编解码器无法解码位置 5 中的字节 0xb3 起始字节无效 整个文件app py coding utf 8 from flask
  • Geopandas 设置几何图形:MultiPolygon“等于 len 键和值”的 ValueError

    我有 2 个带有几何列的地理数据框 我将一些几何图形从 1 个复制到另一个 这对于多边形效果很好 但对于任何 有效 多多边形都会返回 ValueError 请指教如何解决这个问题 我不知道是否 如何 为什么应该更改 MultiPolygon
  • 回滚后是否应该删除迁移

    我对 ruby 和 Rails 相当陌生 刚刚开始了解迁移 我的问题是回滚后删除迁移的最佳实践或正确时间是什么 到目前为止 我读到的内容是回滚后是否删除迁移的观点问题 但是在团队中工作时删除迁移是否有任何重大影响 以及保留迁移文件相对于删除
  • 表达式中的 Python 'in' 关键字与 for 循环中的比较 [重复]

    这个问题在这里已经有答案了 我明白什么是in运算符在此代码中执行的操作 some list 1 2 3 4 5 print 2 in some list 我也明白i将采用此代码中列表的每个值 for i in 1 2 3 4 5 print
  • 下载所有 gems 依赖项

    我想通过下载任何所需的文件并将它们带到另一台计算机来安装指南针没有互联网连接 我已经下载了指南针的源包 当我在未连接的计算机上运行 gem 时 它抱怨缺少依赖项 有什么解决办法吗 这正是我遇到的问题 经过一段时间的搜索后 我找到了一个可以使
  • Numpy 优化

    我有一个根据条件分配值的函数 我的数据集大小通常在 30 50k 范围内 我不确定这是否是使用 numpy 的正确方法 但是当数字超过 5k 时 它会变得非常慢 有没有更好的方法让它更快 import numpy as np N 5000
  • 如何改变Python中特定打印字母的颜色?

    我正在尝试做一个简短的测验 并且想将错误答案显示为红色 欢迎来到我的测验 您想开始吗 是的 祝你好运 法国的首都是哪里 法国 随机答案不正确的答案 我正在尝试将其显示为红色 我的代码是 print Welcome to my Quiz be
  • 通过数据框与函数进行交互

    如果我有这样的日期框架 氮 EG 00 04 NEG 04 08 NEG 08 12 NEG 12 16 NEG 16 20 NEG 20 24 datum von 2017 10 12 21 69 15 36 0 87 1 42 0 76
  • 在Python中重置生成器对象

    我有一个由多个yield 返回的生成器对象 准备调用该生成器是相当耗时的操作 这就是为什么我想多次重复使用生成器 y FunctionWithYield for x in y print x here must be something t
  • glpk.LPX 向后兼容性?

    较新版本的glpk没有LPXapi 旧包需要它 我如何使用旧包 例如COBRA http opencobra sourceforge net openCOBRA Welcome html 与较新版本的glpk 注意COBRA适用于 MATL
  • 从 Python 中的类元信息对 __init__ 函数进行类型提示

    我想做的是复制什么SQLAlchemy确实 以其DeclarativeMeta班级 有了这段代码 from sqlalchemy import Column Integer String from sqlalchemy ext declar
  • Spark.read 在 Databricks 中给出 KrbException

    我正在尝试从 databricks 笔记本连接到 SQL 数据库 以下是我的代码 jdbcDF spark read format com microsoft sqlserver jdbc spark option url jdbc sql
  • 改变字典的哈希函数

    按照此question https stackoverflow com questions 37100390 towards understanding dictionaries 我们知道两个不同的字典 dict 1 and dict 2例
  • Python 分析:“‘select.poll’对象的‘poll’方法”是什么?

    我已经使用 python 分析了我的 python 代码cProfile模块并得到以下结果 ncalls tottime percall cumtime percall filename lineno function 13937860 9

随机推荐

  • Linux curl 命令详解

    该命令设计用于在没有用户交互的情况下工作 curl 是一个工具 用于传输来自服务器或者到服务器的数据 向服务器传输数据或者获取来自服务器的数据 可支持的协议有 DICT FILE FTP FTPS GOPHER HTTP HTTPS IMA
  • 区块链的几大模块

    共识的分类 POW POW的一般理解 根据难度做SHA256哈希运算 不停寻找Nonce 特定的HASH 前导0的个数越多 代表难度越大 优点是难于计算 一旦收到网络上的区块 能快速验证 难度算法按高度动态调整 维持出块时间不变 POW规范
  • 06 - string,number

    06 String Number 6 01 Number 关于数字的一些特性 属性与方法 数字 0123456789 var num 10 console log num 特殊数字值 NaN 非数字 数字相关方法 全局方法 number v
  • IntelliJ Idea入门教程:如何新建项目

    下载IntelliJ IDEA 创建项目后 就可以开始添加新项目 创建目录和包 添加新类 导入资源以及通过添加更多模块扩展项目 建立新项目 创建一个新目录 在 项目 工具窗口 Alt 1 中 右键单击要在其中创建新目录的节点 然后选择 Ne
  • [588]Grafana安装及简单使用

    简介 Grafana是一个跨平台的开源的度量分析和可视化工具 可以通过将采集的数据查询然后可视化的展示 并及时通知 它主要有以下六大特点 1 展示方式 快速灵活的客户端图表 面板插件有许多不同方式的可视化指标和日志 官方库中具有丰富的仪表盘
  • python中^是什么意思

    是什么意思 输入为 x 3 x x 2 print x 在python中 符号代表按位翻转 输出为 意思就是 按位异或 可以参考如下示例 In 4 2 2 Out 4 0 In 5 1 3 Out 5 2 In 6 333 333 Out
  • 【IEEE 13 节点分配系统中的THD降低】系统的谐波分析给出了各种总线上电流和电压的谐波频谱和THD(Simulink实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 3 参考文献 4 Simulink仿真实现 1 概述 IEEE 13 节点分配系统中的THD
  • 安装最新版greenplum6.10时报错:依赖检测失败。(详细解决步骤)

    报错原因 最新版本的greenplum6 10一些内部工具对系统环境的依赖有要求 故直接进行rpm包安装时会报依赖缺失 如果在装服务器系统的时候选则的最小化安装 那么必然会报这个错误 greenplum5及以下版本在安装的时候是不会报这个错
  • 第二周作业

    1 运行脚本可以显示出本机的ip地址 bin bash ifconfig eth0 sed n 2p awk print 2 ifconfig eth0 提取网卡eth0的配置信息 使用 传给sed sed n 2p 输出ifconfig
  • 【nodejs进阶之旅(2)】:使用koa2+mysql 实现列表数据分页

    1 展示效果 分页 2 分页主要字段 分页主要字段包括 pageSize 每页条数 pageNum 第几页 startRow 当前开始页编号 endRow 当前结束页编号 total 总数量 主要是根据前端分页的参数 进行处理后 返回前端正
  • javamail 发送邮件

    转自 http blog csdn net jbgtwang archive 2009 06 11 4259787 aspx 今天学习了一下JavaMail javamail发送邮件确实是一个比较麻烦的问题 为了以后使用方便 自己写了段代码
  • AcWing 1230. K倍区间

    给定一个长度为 N 的数列 A1 A2 AN 如果其中一段连续的子序列 Ai Ai 1 Aj 之和是 K 的倍数 我们就称这个区间 i j 是 K 倍区间 你能求出数列中总共有多少个 K倍区间吗 输入格式 第一行包含两个整数 N 和 K 以
  • 位运算举例

    从一个整数中把从右边开始的4 7位取出来 1 a右移4位 a gt gt 4 2 设置一个低4位为1 其余为全为0的数b 0 lt lt 4 0 000000000 0 0 1111111 1 0 lt lt 4 11111 0000 0
  • CH10-HarmonyOS原子化服务

    文章目录 前言 目标 原子化服务定义 原子化服务特性 原子化服务体验 服务中心 原子化服务流转 原子化服务分享 原子化开发基础 开发总体要求 服务卡片定义 运作机制 卡片提供方主要回调函数 JS卡片语法基础 原子化服务开发进阶 卡片结构目录
  • 实验吧-密码学-奇怪的短信(九键密码)

    短信里的一段密文 335321414374744361715332 一般来说是用手机接收短信的 于是可能是手机上的九键 将密文两个两个分隔开 33 53 21 41 43 74 74 43 61 71 53 32 然后对应着拼音九键来找出对
  • Android开发 关于避免切换主题时免闪屏的几种方式

    Android开发 关于避免切换主题时闪屏的几种方式 在activity中调用setTheme来切换夜间模式的方法可能大家有看过相关的文章了 但是调用setTheme设置的主题后界面并没有变化 这时需要调用activity的recreate
  • RAID 磁盘状态为foreign,怎么变成ready

    我们在关掉电源 插入三块硬盘 打开电源 这时候 首先启动服务器 出现 Press
  • Eclipse重命名Package,出现的四个选项的意思。

    1 update references 更新参考 2 Rename subpackages 重命名子包 3 Update textual occurrences in comments and strings forces preview
  • 51单片机SCT15数码管4321断灭长灭程序

    include
  • 第七章 yaml格式

    一 简单说明 yaml是一个可读性高 用来表达数据序列的格式 YAML 的意思其实是 仍是一种标记语言 但为了强调这种语言以数据做为中心 而不是以标记语言为重点 二 基本语法 缩进时不允许使用Tab键 只允许使用空格缩进的空格 数目不重要