Вы используете небезопасную функцию совместимости PyYAML dump()
(и, кроме того, неэффективно). Эта функция устарела, но имитирует ошибочное поведение PyYAML.
Вместо этого следует создать экземпляр YAML()
и использовать его метод .dump()
.
import sys
import yaml as pyyaml
import ruamel.yaml
seq = ["x", "y", "z", "Y", "true", True]
print("PyYAML version:", pyyaml.__version__)
pyyaml.dump(seq, sys.stdout, default_flow_style=None, explicit_start=True, version=(1,1))
print()
yaml = ruamel.yaml.YAML(typ='safe')
yaml.version = (1,1)
yaml.default_flow_style=None
print("ruamel.yaml version:", ruamel.yaml.__version__)
yaml.dump(seq, sys.stdout)
, что дает:
PyYAML version: 5.3.1
%YAML 1.1
--- [x, y, z, Y, 'true', true]
ruamel.yaml version: 0.16.10
%YAML 1.1
--- [x, 'y', z, 'Y', 'true', true]