2013-12-11 5 views
-3

데이터 [ 'entities'] [ 'urls'] [0] [ 'expanded_url']이 (가) 'IndexError : list index of range'오류를 생성하는 이유는 무엇입니까? 이 오류의 의미는 이해하지만 왜 볼 수 없습니까? 아마 2시에 너무 졸 렸어? 도와주세요파이썬 - 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

는 표시하지 않는 괄호의 또 다른 세트가 있는가 vine.co/v/hQPlQ9l5XDD? 이것은 유효한 파이썬 데이터 구조가 아닙니다. – roippi

+0

@roippi - 네, 맞아요. 나는 중괄호 하나를 놓쳤다. 왜 downvote? – NullException

+0

나는 downvote하지 않았다. 그러나 당신은 여전히 ​​우리에게'data'가 실제로 무엇인지를 보여주지 못하고있다. 'data [ 'entities'] [ 'urls'] [0] [ 'expanded_url']'데이터가 * 튜플 *이기 때문에'TypeError'를줍니다. 뒤에 오는 쉼표는 그렇게 만듭니다. – roippi

답변

2

이것은 유효한 파이썬 코드가 아닙니다. u에는 중괄호가 없습니다. 여기 :

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']

인쇄는

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'] 
관련 문제