我有一个 json 数据,当打印出来时,它不会按照我设置的顺序打印。
#!/usr/bin/env python2.7
myjson = {
"timestamp": "2019-05-22T15:25:15.870Z",
"account_name": "BLah, Inc",
"alert_description": "Check Proc Num",
"alert_itemid": "N/A",
"alert_key": "N/A",
"alert_message": "Check Proc Num",
"alert_zabbix_url": "https://blah.com",
"alertcount": "1",
"alertid": "41009",
"checkcount": "13",
"current_state": "problem",
"groups": ["Linux_servers--2", "blah2" ],
"hostid": "10439",
"hostip": "blah",
"hostname": "blah",
"value": "N/A"
}
myjson['account_name'] = "NewBlah, Inc"
myjson['alert_description'] = "Disk Space"
当我运行上面的代码时,我得到了这个:
{'value': 'N/A', 'hostid': '10439', 'alertid': '41009', 'alert_key': 'N/A', 'timestamp': '2019-05-22T15:25:15.870Z', 'alert_zabbix_url': 'https://blah.com', 'current_state': 'problem', 'hostname': 'blah', 'alert_message': 'Check Proc Num', 'alertcount': '1', 'groups': ['Linux_servers--2', 'blah2'], 'hostip': 'blah', 'checkcount': '13', 'alert_description': 'Disk Space', 'account_name': 'NewBlah, Inc', 'alert_itemid': 'N/A'}
问题是,这些数据都是乱序的。我希望数据看起来像这样(注意时间戳):
{ "timestamp": "2019-05-22T15:25:15.870Z", "account_name": "BLah, Inc", "alert_description": "Check Proc Num", "alert_itemid": "N/A", "alert_key": "N/A", "alert_message": "Check Proc Num", "alert_zabbix_url": "https://blah.com", "alertcount": "1", "alertid": "41009", "checkcount": "13", "current_state": "problem", "groups": ["Linux_servers--2", "blah2" ], "hostid": "10439", "hostip": "blah", "hostname": "blah", "value": "N/A" }
我希望时间戳排在第一位,因为我在 myjson 变量中设置的原始数据中指定了它。
我用谷歌搜索了这个,但没有找到可行的解决方案。出于可移植性的原因,我希望仅使用默认的 python 库/模块来解决这个问题。