2013-12-11 166 views
-3

爲什麼數據['entities'] ['urls'] [0] ['expanded_url']會產生'IndexError:list index out of range'錯誤?我明白這個錯誤意味着什麼,但不明白爲什麼?凌晨2點可能太困了?請幫助Python - IndexError:列表索引超出範圍

data = { 
u'entities': { 
    u'symbols': [], 
    u'user_mentions': [], 
    u'hashtags': [{u'indices': [3, 13], u'text': u'firstpost'}, 
        {u'indices': [22, 35], u'text': u'snowinginnyc'}], 
    u'urls': [{u'url': u'https://t.co/0sClwIMXKW', 
       u'indices': [36, 59], 
       u'expanded_url': u'https://vine.co/v/hQPlQ9l5XDD', 
       u'display_url': u'vine.co/v/hQPlQ9l5XDD'} 
      ] 
}},                  
+1

有另一組括號你不顯示?這不是一個有效的Python數據結構。 – roippi

+0

@roippi - 是的,你說得對。我錯過了一個括號。爲什麼downvote? – NullException

+0

我沒有downvote,但你仍然沒有向我們展示「數據」究竟是什麼。 'data ['entities'] ['urls'] [0] ['expanded_url']'給出一個'TypeError',因爲數據是一個*元組*。尾隨的逗號使得它如此。 – roippi

回答

2

這不是一個有效的python代碼,你缺少大括號。在這裏:

data = { 
u'entities': { 
    u'symbols': [], 
    u'user_mentions': [], 
    u'hashtags': [{u'indices': [3, 13], u'text': u'firstpost'}, 
        {u'indices': [22, 35], u'text': u'snowinginnyc'}], 
    u'urls': [{u'url': u'https://t.co/0sClwIMXKW', 
       u'indices': [36, 59], 
       u'expanded_url': u'https://vine.co/v/hQPlQ9l5XDD', 
       u'display_url': u'vine.co/v/hQPlQ9l5XDD'} 
      ] 
} 
} 

print data['entities']['urls'][0]['expanded_url']

打印vine.co/v/hQPlQ9l5XDD

1
data = {u'entities': { 
    u'symbols': [], 
    u'user_mentions': [], 
    u'hashtags': [{u'indices': [3, 13], u'text': u'firstpost'}, 
        {u'indices': [22, 35], u'text': u'snowinginnyc'}], 
    u'urls': [{u'url': u'https://t.co/0sClwIMXKW', 
       u'indices': [36, 59], 
       u'expanded_url': u'https://vine.co/v/hQPlQ9l5XDD', 
       u'display_url': u'vine.co/v/hQPlQ9l5XDD'} 
      ] 
}}   
print data['entities']['urls'][0]['expanded_url'] 
相關問題