基于Python中是否有支持将长字符串转储为块文字或折叠块的yaml库?
import yamlfrom collections import OrderedDictclass quoted(str): passdef quoted_presenter(dumper, data): return dumper.represent_scalar('tag:yaml.org,2002:str', data, style='"')yaml.add_representer(quoted, quoted_presenter)class literal(str): passdef literal_presenter(dumper, data): return dumper.represent_scalar('tag:yaml.org,2002:str', data, style='|')yaml.add_representer(literal, literal_presenter)def ordered_dict_presenter(dumper, data): return dumper.represent_dict(data.items())yaml.add_representer(OrderedDict, ordered_dict_presenter)d = OrderedDict(short=quoted("Hello"), long=literal("Line1nLine2nLine3n"))print(yaml.dump(d))输出量
short: "Hello"long: | Line1 Line2 Line3



