1

我的数据

(('check_kvserver_mem_4500000', 2737L), 
 ('check_ethstatus', 250L), 
 ('check_ddos', 229L), 
 ('check_coredump', 193L),
 ('check_robot', 174L),
 ('check_disk_90_95', 155L))

进入这个:print json.dumps(data)

[["check_kvserver_mem_4500000", 2737], 
 ["check_ethstatus", 250],
 ["check_ddos", 229],
 ["check_coredump", 193], 
 ["check_disk_90_95", 155]]

我想要这样的数据

{["check_kvserver_mem_4500000", 2737],
 ["check_ethstatus", 250]
 ["check_ddos", 229], 
 ["check_coredump", 193], 
 ["check_disk_90_95", 155]}

或者

 {"check_kvserver_mem_4500000":2737,
  "check_ethstatus":250,
  "check_ddos":229, 
  "check_coredump":193,
  "check_disk_90_95":155}
4

3 回答 3

4

结果是您想要一个 JSON 对象,但您的数据没有键/值结构。json.dumps(data)在生成 JSON 列表而不是对象时做正确的事情也是如此。元组的 Python 元组无法在无效的 JSON 对象上匹配。

编辑

在您更改了问题(并在执行此操作时删除了我漂亮的编辑)后,您的问题可以得到回答。

data = (('check_kvserver_mem_4500000', 2737L),
        ('check_ethstatus', 250L),
        ('check_ddos', 229L),
        ('check_coredump', 193L),
        ('check_robot', 174L),
        ('check_disk_90_95', 155L))
print json.dumps(dict(data))

结果是:

'{"check_disk_90_95": 155, "check_coredump": 193, "check_robot": 174,
  "check_kvserver_mem_4500000": 2737, "check_ddos": 229, "check_ethstatus": 250}'
于 2012-07-31T07:27:39.620 回答
2
 print json.dumps(dict(data))
 {"check_disk_90_95": 155,
  "check_coredump": 193,
  "check_robot": 174,
  "check_kvserver_mem_4500000": 2737,
  "check_ddos": 229,
  "check_ethstatus": 250}
于 2012-07-31T07:32:21.450 回答
1
d = dict((('check_kvserver_mem_4500000', 2737L), ('check_ethstatus', 250L), ('check_ddos', 229L), ('check_coredump', 193L), ('check_robot',
174L), ('check_disk_90_95', 155L)))

import json 

print json.dumps(x, indent = 5)

退货

{
     "check_disk_90_95": 155, 
     "check_coredump": 193, 
     "check_robot": 174, 
     "check_kvserver_mem_4500000": 2737, 
     "check_ddos": 229, 
     "check_ethstatus": 250
}
于 2012-07-31T07:30:32.677 回答