【发布时间】:2013-08-01 05:25:35
【问题描述】:
您好,我在 python 中有以下代码:
import json
jsonpost = json.loads('{"Player": {"_id": "3","firstName":"kim","surname":"jones"},"newTable": {"_id": "4","SurName": "abcd"}}')
for key in jsonpost.keys():
for innerkey in jsonpost[key]:
print innerkey
我的问题是为什么当我打印出内部键时,jsonpost['Player'] 的键顺序如下:
_id , surname, firstName
【问题讨论】:
-
字典不是在 Python 中排序的。
-
映射没有指定的顺序,只是键值的关联。您需要它们按特定顺序排列吗?
-
字典通常没有保证顺序。这是一个实现细节,因为它们不是为了迭代而构建的。我认为 Python 有一个名为“odict”的包用于此目的。
-
按照规范,JSON(无序的键/值对集)也是如此:json.org