2013-12-11 167 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'] 
相关问题