JSON對象中的項目是否使用“json.ddump”出現(xiàn)故障?我在用json.dumps轉(zhuǎn)換成jsoncountries.append({"id":row.id,"name":row.name,"timezone":row.timezone})print json.dumps(countries)我的結(jié)果是:[
{"timezone": 4, "id": 1, "name": "Mauritius"},
{"timezone": 2, "id": 2, "name": "France"},
{"timezone": 1, "id": 3, "name": "England"},
{"timezone": -4, "id": 4, "name": "USA"}]我希望按以下順序設(shè)置鍵:ID、Name、Timezone-但我有時區(qū)、id、name。我該怎么解決這個問題?
3 回答

德瑪西亞99
TA貢獻1770條經(jīng)驗 獲得超3個贊
dict
sort_keys
>>> import json>>> json.dumps({'a': 1, 'b': 2})'{"b": 2, "a": 1}'>>> json.dumps({'a': 1, 'b': 2}, sort_keys=True)'{"a": 1, "b": 2}'
collections.OrderedDict
:
>>> from collections import OrderedDict>>> json.dumps(OrderedDict([("a", 1), ("b", 2)]))'{"a": 1, "b": 2}' >>> json.dumps(OrderedDict([("b", 2), ("a", 1)]))'{"b": 2, "a": 1}'
自Python 3.6以來
>>> json.dumps(OrderedDict(a=1, b=2))'{"a": 1, "b": 2}'>>> json.dumps(OrderedDict(b=2, a=1))'{"b": 2, "a": 1}'
OrderedDict
object_pair_hook
>>> json.loads('{"a": 1, "b": 2}', object_pairs_hook=OrderedDict)OrderedDict([('a', 1), ('b', 2)]) >>> json.loads('{"b": 2, "a": 1}', object_pairs_hook=OrderedDict)OrderedDict([('b', 2), ('a', 1)])

慕慕森
TA貢獻1856條經(jīng)驗 獲得超17個贊
>>> {"b": 1, "a": 2}{'a': 2, 'b': 1}
json.dumps
:
>>> {"id":1,"name":"David","timezone":3}{'timezone': 3, 'id': 1, 'name': 'David'}
添加回答
舉報
0/150
提交
取消