2015-10-20 31 views
2

我使用下面的腳本:的Python迭代循環 'i' 的

tagRequest = requests.get("https://api.instagram.com/v1/tags/" + tag + "/media/recent?client_id=" + clientId) 
tagData = json.loads(tagRequest.text) 
tagId = tagData["data"][0]["user"]["id"] 

for i in tagData["data"]: 
    print tagData["data"][i] 

我的腳本應該遍歷JSON對象,對tagdata。 (過去在「數據」一切)不過,我收到以下錯誤:list indices must be integers, not dict.

+0

要麼打印i要麼覆蓋範圍 – sam

+1

打印您的tagData並將其張貼 – iNoob

+0

@Aero不要忘記接受答案(您選擇的答案旁邊的複選標記符號)! – uhoh

回答

7

你迭代的tagData['data']不是它的索引內容,因此:

for i in tagData["data"]: 
    print i 

或指數:

for i in xrange(len(tagData["data"])): 
    print tagData["data"][i] 
+0

謝謝,它現在有效。 – Aero

1

如果您使用枚舉(迭代器),您可以訪問索引並在foreach項:

for i,item in enumerate(tagData["data"]): 
    print i 
    print item