中英文网站建设大概多少钱,网站改版意见,西安十大网络公司,my最新域名是什么2 | YAML缩进、分离、注释简单使用 1 简介2 缩进3 分离4 多行文本4.1 折叠块4.2 字面块4.3 引用块 5 注释5.1 行内注释5.2 块注释5.3 完美注释示例 1 简介
YAML 不是一种标记语言#xff0c;而是一种数据格式#xff1b;使用缩进和分离来表示数据结构#xff0c;不需要使用… 2 | YAML缩进、分离、注释简单使用 1 简介2 缩进3 分离4 多行文本4.1 折叠块4.2 字面块4.3 引用块 5 注释5.1 行内注释5.2 块注释5.3 完美注释示例 1 简介
YAML 不是一种标记语言而是一种数据格式使用缩进和分离来表示数据结构不需要使用额外的标记语言。
2 缩进
使用缩进来表示嵌套关系标识方式为使用空格缩进必须使用相同数量的空格比如以下每个列表项都由一个连字符开头后面跟着一个空格每行都有相同数量的缩进子项的缩进比父项的缩进多两个空格以此表示嵌套关系 - name: noamanelsonbolg: https://blog.csdn.net/NoamaNelsondescription: testerlanguage:- python- c- c- go- javaoperating_system:- linux- windows- name: xiaomingage: 88description: Old Monster输出为
# 解析
# -*- coding:utf-8 -*-
# 作者虫无涯
# 日期2023/7/27
# 文件名称yaml_read.py
# 作用yaml读取
# 联系VX(NoamaNelson)
# 博客https://blog.csdn.net/NoamaNelsonwith open(config_suojin.yaml) as f:yaml_data2 yaml.load(f, Loaderyaml.FullLoader)
print(yaml_data2)# 输出
[{name: noamanelson,bolg: https://blog.csdn.net/NoamaNelson, description: tester, language: [python, c, c, go, java], operating_system: [linux, windows]}, {name: xiaoming,age: 88, description: Old Monster}]3 分离
使用分离表示键和值之间的关系冒号用于分离键和值冒号之后必须跟空格示例
author: libai
age: 未知
verse_title: 静夜思
content:one: 窗前明月光,two: 疑是地上霜.three: 举头望明月,four: 低头思故乡.解析
with open(config_suojin.yaml) as f:yaml_data2 yaml.load(f, Loaderyaml.FullLoader)
print(yaml_data2)# 输出
{author: libai,
age: 未知,
verse_title: 静夜思,
content: {one: 窗前明月光,, two: 疑是地上霜., three: 举头望明月,, four: 低头思故乡.}}4 多行文本
文本值比较长需要占据多行表示方式有以下 折叠块字面块、引用块 4.1 折叠块
折叠块将多行文本合并为一行并删除行末的换行符和空格使用垂直条进行表示。
song: 曾经有一份真挚的爱情摆在我的面前我没有好好珍惜 等到失去时 才感到后悔如果老天能够再给我一次机会我回对那个女孩说 我爱你如果非要在这个爱上加个期限的话我希望是 一万年曾是你陪我 度过漫长的那么多天是你对我说还有真爱而我却不懂 如何呵护你爱你却伤了你的心就在我的心 刚要融化的时候而你却悄悄地离去我多希望你 希望你回心转意因为我将会把你珍惜还有什么话要说 还有多少泪要流难道你不知道 我对你的爱还有什么话要说 还有多少泪要流有一天我会让你回心转意# 解析
{song: 曾经有一份真挚的爱情摆在我的面前 我没有好好珍惜 等到失去时 才感到后悔 如果老天能够再给我一次机会 我回对那个女孩说 我爱你 如果非要在这个爱上加个期限的话 我希望是 一万年 曾是你陪我 度过漫长的那么多天 是你对我说还有真爱 而我却不懂 如何呵护你 爱你却伤了你的心 就在我的心 刚要融化的时候 而你却悄悄地离去 我多希望你 希望你回心转意 因为我将会把你珍惜 还有什么话要说 还有多少泪要流 难道你不知道 我对你的爱 还有什么话要说 还有多少泪要流 有一天我会让你回心转意\n}
4.2 字面块
字面块会原样输出多行文本包括换行符和空格用垂直条|进行表示。
song: |曾经有一份真挚的爱情摆在我的面前我没有好好珍惜 等到失去时 才感到后悔如果老天能够再给我一次机会我回对那个女孩说 我爱你如果非要在这个爱上加个期限的话我希望是 一万年曾是你陪我 度过漫长的那么多天是你对我说还有真爱而我却不懂 如何呵护你爱你却伤了你的心就在我的心 刚要融化的时候而你却悄悄地离去我多希望你 希望你回心转意因为我将会把你珍惜还有什么话要说 还有多少泪要流难道你不知道 我对你的爱还有什么话要说 还有多少泪要流有一天我会让你回心转意# 解析
{song: 曾经有一份真挚的爱情摆在我的面前\n我没有好好珍惜 等到失去时 才感到后悔\n如果老天能够再给我一次机会\n我回对那个女孩说 我爱你\n如果非要在这个爱上加个期限的话\n我希望是 一万年\n曾是你陪我 度过漫长的那么多天\n是你对我说还有真爱\n而我却不懂 如何呵护你\n爱你却伤了你的心\n就在我的心 刚要融化的时候\n而你却悄悄地离去\n我多希望你 希望你回心转意\n因为我将会把你珍惜\n还有什么话要说 还有多少泪要流\n难道你不知道 我对你的爱\n还有什么话要说 还有多少泪要流\n有一天我会让你回心转意\n}4.3 引用块
引用会用到 锚点符合和 *星号符号;用来建立锚点 表示合并到当前数据 用来引用锚点;
user: useraddname: xiaozhangage: 20dept:id: 12324343434: *useradd#相当于
user: name: xiaozhangage: 20dept:id: 12324343434name: xiaozhangage: 20文件内引用已经定义好的变量
base.host: https://xxx.com
add.person.url: ${base.host}/person/add5 注释
分行内注释和块注释。
5.1 行内注释
行内注释用#符号#符号后面的内容会被解析器忽略
# 行内注释
name: xiaozhang # 这是name的值5.2 块注释
即多行注释
#- name: noamanelson
# bolg: https://blog.csdn.net/NoamaNelsondescription: testerlanguage:- python- c- c- go- java
# operating_system:
# - linux
# - windows
#- name: xiaoming
# age: 88
# description: Old Monster{description: tester, language: [python, c, c, go, java]}5.3 完美注释示例
# 配置文件
#
# 下面是一些基本的设置
app.name: app_demo # 应用程序名称
app.host: localhost # 应用程序主机名
app.port: 8080 # 应用程序端口
app.debug: true # 是否输出调试信息# 数据库配置项
#
# 数据库地址
db.host: localhost
# 数据库端口号
db.port: 3306
# 数据库名
db.name: database
# 数据库用户名
db.user: root
# 数据库密码{app.name: app_demo, app.host: localhost, app.port: 8080, app.debug: True, db.host: localhost, db.port: 3306, db.name: database, db.user: root, db.password: 123456}