1

我想要做的是用 Python 将 Json 数据作为列表(或数组)取出,我尝试了几次但没有奏效。我的json数据是这样的:

{
    "status":"OK",
    "List":{
        "stuff":[{
            "id":"326",
            "name":"a",
            "url":"autob-fulla.tgz",
        },{
            "id":"327",
            "name":"b",
            "url":"auto-fullb.tgz",
        },{
            "id":"328",
            "name":"c",
            "url":"auto-fullc.tgz",
        }]
    }
}

我想返回“id”的所有值。现在我的代码是这样的:

import json
def retrieve():
    print('retrieving results...')
    testQueueID = '1';
    base_url1 = 'http://localhost:8080/stuff'
    conn = Connection(base_url1, username='admin', password='admin')
    resp = conn.request_get("", args={}, headers={'content-type':'application/xml', 'accept':'application/xml'})
    decoded_json = json.loads(json.dumps(resp, sort_keys=True, indent=4, skipkeys=True))
    return decoded_json 
4

2 回答 2

4

只是不接json.dumps电话。您已经有一个包含 JSON 的字符串,所以您只需要json.loads().

于 2012-06-19T05:36:41.747 回答
1

1.) xml != json

2)先试试这个http://www.doughellmann.com/PyMOTW/json/。它会教你。

3.)简单的代码让你开始。查看打印的数据。

import json
from pprint import pprint
json_data=open('json_datafile')

data = json.load(json_data)
pprint(data)
json_data.close()
于 2012-06-19T05:33:18.603 回答