如何在从 YAML 文档加载的 python 字典中的指定位置插入键值对?
例如,如果字典是:
dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}
例如,我希望在 'Phone':'1234'
之前 和 'Age'
之后 插入元素 'Name'
。我将要处理的实际字典非常大(已解析的 YAML 文件),因此删除和重新插入可能有点麻烦(我真的不知道)。
如果给我一种插入 OrderedDict
中指定位置的方法,那也可以。
原文由 DeepApp 发布,翻译遵循 CC BY-SA 4.0 许可协议
在 python < 3.7(或 cpython < 3.6)上,您无法控制标准字典中对的顺序。
如果您打算经常执行任意插入,我的建议是使用列表来存储键,并使用字典来存储值。
如果你计划初始化一个内容不太可能改变的排序字典,你可以使用
collections.OrderedDict
维护插入顺序的结构。注意
OrderedDict
不支持在任意位置插入(它只记住键插入字典的顺序)。