第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

JSON對象中的項目是否使用“json.ddump”出現(xiàn)故障?

JSON對象中的項目是否使用“json.ddump”出現(xiàn)故障?

慕桂英3389331 2019-10-12 07:07:52
JSON對象中的項目是否使用“json.ddump”出現(xiàn)故障?我在用json.dumps轉換成jsoncountries.append({"id":row.id,"name":row.name,"timezone":row.timezone})print json.dumps(countries)我的結果是:[    {"timezone": 4, "id": 1, "name": "Mauritius"},     {"timezone": 2, "id": 2, "name": "France"},     {"timezone": 1, "id": 3, "name": "England"},     {"timezone": -4, "id": 4, "name": "USA"}]我希望按以下順序設置鍵:ID、Name、Timezone-但我有時區(qū)、id、name。我該怎么解決這個問題?
查看完整描述

3 回答

?
小怪獸愛吃肉

TA貢獻1852條經驗 獲得超1個贊

雙Pythondict(在Python3.7之前)和JSON對象是無序集合。你可以通過sort_keys參數(shù),對鍵進行排序:

>>> 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以來,保留關鍵字參數(shù)順序,可以使用更好的語法重寫上面的內容:

>>> json.dumps(OrderedDict(a=1, b=2))'{"a": 1, "b": 2}'>>> json.dumps(OrderedDict(b=2, a=1))'{"b": 2, "a": 1}'

看見Pep 468-保留關鍵字參數(shù)順序.

如果輸入為JSON,則保留順序(以便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)])



查看完整回答
反對 回復 2019-10-13
?
料青山看我應如是

TA貢獻1772條經驗 獲得超8個贊

字典的順序與它所定義的順序沒有任何關系。所有字典都是這樣,而不僅僅是那些變成JSON的字典。

>>> {"b": 1, "a": 2}{'a': 2, 'b': 1}

事實上,這本字典還沒到,就被翻了個底朝天。json.dumps:

>>> {"id":1,"name":"David","timezone":3}{'timezone': 3, 'id': 1, 'name': 'David'}


查看完整回答
反對 回復 2019-10-13
  • 3 回答
  • 0 關注
  • 290 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號