0

私は、次のようなPythonに入ったJSON文字列を持っています:

{"count": 100, 
 "facets": null, 
 "previous_page": null, 
 "results": [{"updated_at": "2013-09-17T13:45:13Z", "test_id": 194037042, "customer_id":       
              203793326, "id": 1954182}]

より多くの要素がありますが、これは私が必要とするものの小さなカットです. 基本的に、結果には「updated_at、test_id、customer_id、id」の上の要素を含む 100 個の辞書のリストがあります。私がする必要があるのは次のとおりです。

ID だけのすべての値のリストを取得する必要があります。これについてどうすればよいかわかりませんが、次のようなことを試しました:

for i in my_dict['results']:
    print i['id']

しかし、次のようなエラー メッセージが表示されます。

print i['id']
TypeError: string indices must be integers

私は何を間違っていますか?

4

2 に答える 2

0

あなたは明らかに間違ったことをしていません。データには、適切な python ではない「null」要素が含まれています。これはうまくいきます。

my_dict = {"count": 100, 
 "facets": None, 
 "previous_page": None, 
 "results": [{"updated_at": "2013-09-17T13:45:13Z", "test_id": 194037042, "customer_id": 203793326, "id": 1954182}]
}

for i in my_dict['results']:
    print i['id']

あなたが持っているエラーは、リスト項目の1つが文字列であることを意味し、['id']要素を取得しようとすると、エラーはリストインデックス(文字列は文字のリスト)が整数でなければならないことを正しく伝えます.

于 2013-09-17T21:06:14.317 に答える