【发布时间】:2012-04-29 17:13:43
【问题描述】:
我想将 json 字符串转换为 Python 字典时遇到问题。我有像
这样的字符串 s={"name":{"Saban:Saulic"},"price":{"koncert:1000"} ....}
当我写类似的东西时
tags=json.loads(s)
我 gtet 字典,但键的顺序与字符串中的顺序不同(它不是名称,价格......)。如何将 json 字符串转换为字典并在键中保存顺序?
【问题讨论】:
-
Python 字典是无序的,这很好,因为通常您按键 访问条目,如果您必须遍历元素,顺序通常无关紧要。顺便说一句,
s既不是字符串也不是字典,如果它是字符串,则不是有效的 JSON。看起来您正在使用不同的结构,例如对象数组:[{"name": "...", "price": "..."}, ...]。如果您对为什么您需要按顺序使用密钥提供一些解释并提供正确的示例,那么我们可以为您提供更好的帮助。 -
dict中并没有真正意义上的“键顺序”。您可以一次迭代一个,但无法控制获取它们的顺序。 -
我认为 Stackoverflow 上的 this previous 问题提供了答案。