Python Tuple到JSON输出

时间:2011-02-23 07:00:37

标签: python json

我该怎么做:

data = ((1, '2011-01-01'), (2, '2011-01-02'), (1, '2011-01-15'), (3, '2011-02-01'))

进入这个:

{
    "item": [
     "1",
     "2",
     "1",
     "3",
    ],
    "settings": {
     "axisx": [
      "2011-01-01",
      "2011-01-02",
      "2011-01-15",
      "2011-02-01"
     ],
     "axisy": [
      "0",
      "100"
     ],
     "colour": "ff9900"
     }
}

或者更确切地说,是否有任何有用的资源我可以阅读,以便我能够生成该JSON输出?所以我知道我需要将我的数据“转换”为正确的数据结构。之后就像json.dumps(data)

一样简单

由于

2 个答案:

答案 0 :(得分:34)

使用json library

然后使用以下内容转换您的数据:

somedict = { "item"     : [ x[0] for x in data ],
             "settings" : { "axisx" : [ x[1] for x in data ],
                            "axisy" : [ 0, 100],
                            "colour" : "ff9900" }
           }

并致电:

print json.dumps(somedict)

答案 1 :(得分:9)

有一个json库。

import json

jsonObj = json.dumps(data)

这是json序列化的。如果您希望以初始data变量之外的其他方式格式化输出,则应创建另一个对象,以您需要的方式使用data的值初始化它,而不是使用json库进行序列化。 / p>