我知道在 SO 上有一些关于此的问题,但我找不到我要找的东西。
我正在使用pyyaml读取(.load()
).yml
文件,修改或添加密钥,然后.dump()
再次写入()。问题是我想在转储后保留文件格式,但它会改变。
例如,我编辑键en.test.index.few
说"Bye"
而不是"Hello"
Python:
with open(path, 'r', encoding = "utf-8") as yaml_file:
self.dict = pyyaml.load(yaml_file)
然后,在更改密钥后:
with open(path, 'w', encoding = "utf-8") as yaml_file:
dump = pyyaml.dump(self.dict, default_flow_style = False, allow_unicode = True, encoding = None)
yaml_file.write( dump )
yaml:
前:
en:
test:
new: "Bye"
index:
few: "Hello"
anothertest: "Something"
后:
en:
anothertest: Something
test:
index:
few: Hello
new: Bye
有没有办法保持相同的格式?例如 qoutes 和 order。我为此使用了错误的工具吗?
我知道原始文件可能并不完全正确,但我无法控制它(它是一个 Ruby on Rails i18n 文件)。
非常感谢。