yaml语法

yaml语法yaml 常用语法 yaml 语法

大家好,欢迎来到IT知识分享网。

YAML 是专门用来写配置文件的语言,非常简洁和强大,远比 JSON 格式方便。

目录

一、简介

二、基本类型(整型/字符串)

2.1 整型

2.1 字符串类型

三、数组/列表

四、对象

五、变量的使用(锚点& 与 引用*)

六、复合结构 

七、Python读取yaml文件

八、一个小栗子哈


一、简介

yaml基本语法规则:

  • 大小写敏感
  • 使用缩进表示层级关系
  • 缩进时不允许使用Tab键,只允许使用空格。
  • 缩进的空格数目不重要,只要相同层级的元素左侧对齐即可
  • #表示注释,从这个字符一直到行尾,都会被解析器忽略,这个和python的注释一样

YAML 支持的数据结构有三种。

  • 对象:键值对的集合,又称为映射(mapping)/ 哈希(hashes) / 字典(dictionary)
  • 数组:一组按次序排列的值,又称为序列(sequence) / 列表(list)
  • 纯量(scalars):单个的、不可再分的值

注意:

冒号后面,要跟一个空格。

yaml语法

二、基本类型(数字/字符串)

2.1 数字

age: 18 score: 89.5

这里的18,就是整型。整型默认就是int类型

小数默认是double类型。

2.1 字符串类型

字符串默认不使用引号表示(也可以使用引号)

name: 张三

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

name: "李四 王五"

三、数组/列表

数组/列表,有2种写法。

方式一

yaml语法

 方式二

yaml语法

 数据结构的子成员是一个数组,则可以在该项下面缩进一个空格:

yaml语法

四、对象

yaml语法

 这表示一个Person类的对象。

五、变量的使用(锚点& 与 引用*)

为了保持内容的简洁,避免过多重复的定义,YAML 提供了由锚点标签“&”引用标签“*”组成的语法。

对于重复的数据,可以单独写到yaml文件的开头位置,其它的地方用到的可以用*引用。

yaml语法

&用来建立锚点,<<表示合并到当前数据,*用来引用锚点。

六、复合结构 

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

languages: - Ruby - Perl - Python websites: YAML: yaml.org Ruby: ruby-lang.org Python: python.org Perl: use.perl.org 

七、Python读取yaml文件

先用open方法读取文件数据,再通过load方法转成字典,这个load跟json里面的load是相似的

f=open(r'D:\py.yaml','r',encoding='utf-8') x=yaml.load(f) print(x['account'])

八、一个小栗子哈

封装了一个读取yaml配置文件的方法

# -*- coding:utf-8 -*- import os import yaml class utils(object): def __init__(self): pass def getValue(self,filename,name): '''读取yaml配置文件''' filepath='../config/{}.yaml'.format(filename)#找到filename的目录 filepath=os.path.abspath(filepath) f=open(filepath,'r',encoding='utf-8')#以只读形式打开filename x=safe_load(f) #通过load方法转成字典 f.close() return x[name] 

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/120437.html

(0)
上一篇 2025-10-29 18:33
下一篇 2025-10-29 19:00

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信