1. yaml 文件中多行字符串可以使用|保留换行符,或者使用>将换行符替换为空格。其中,这两个换行符有以下几种用法:
  • |:文中自动换行,默认仅保留一行空行
  • |+:文中自动换行,保留字符串后面所有的空行
  • |-:文中自动换行,删除字符串后面所有的空行
  • >:文中不自动换行,默认仅保留一行空行
  • >+:文中不自动换行,保留字符串后面所有的空行
  • >-:文中不自动换行,删除字符串后面所有的空行
  1. 多行字符串可以使用引号括起来:" "会进行特殊字符转义,' '保留原始字符串。

新建一个string.yaml文件来展示效果,内容如下:

string_1: |
  I am a string_1.
  11111.
string_2: |+
  I am a string_2.
  22222.
string_3: |-
  I am a string_3.
  33333.
string_4: >
  I am a string_4.
  44444.
string_5: >+
  I am a string_5.
  55555.
string_6: >-
  I am a string_6.
  66666.

再新建一个read_yaml.py的python文件进行打印测试,内容如下:

import yaml

with open('string.yaml','r', encoding='utf-8') as f:
    data = yaml.load(f, Loader=yaml.FullLoader)
    
for key in data:
    print(f'{key}:{data[key]}')

运行这个python文件,结果如下:

[root@localhost ~]# python3 read_yaml.py
string_1:I am a string_1.
11111.

string_2:I am a string_2.
22222.

string_3:I am a string_3.
33333.
string_4:I am a string_4. 44444.

string_5:I am a string_5. 55555.

string_6:I am a string_6. 66666.
[root@localhost ~]#