【发布时间】:2020-03-03 04:34:17
【问题描述】:
我希望输出为以下 YAML:
- item: Food_eat
Food:
itemId: 42536216
category: fruit
moreInfo:
- "organic"
我已使用以下代码以与上述相同的顺序打印,但输出结果不如预期。
代码:
import yaml
yaml_result = [{'item': 'Food_eat', 'Food': {'foodNo': 42536216,'type': 'fruit','moreInfo': ['organic']}}]
print(yaml.safe_dump(yaml_result))
print(yaml_test)
输出:
- Food:
moreInfo:
- organic
category: fruit
itemId: 42536216
item: Food_eat
不确定如何获得所需的输出。
【问题讨论】:
-
你想要的输出和实际的输出代表一回事。因为 Python 字典没有保证键的顺序,所以没有一个好方法可以让你得到你想要的。如果只是为了让输出看起来以某种方式看起来只是一种装饰性的愿望,那么我建议尝试放手 - 对于所有实际用途,它们都是相同的。如果你真的必须有想要的输出,你总是可以自己生成 YAML(对于简单的数据结构很好,对于复杂的数据结构很难正确)。
标签: python-3.x yaml pyyaml