2016-10-25 7 views
1

나는이 JSON 있습니다때문에 구조체에 사용되는 예약 된 코드 워드의, JSON에서 리소스를 가져올 수 없습니다

{ 
'update_id': 30362315, 
'callback_query': { 
    'inline_message_id': '', 
    'from': { 
     'username': u 'simone989', 
     'first_name': u 'Simone', 
     'last_name': '', 
     'type': '', 
     'id': 46806104 
    }.... 

은 JSON에서 매개 변수를 얻으려면을, 내가 사용

update_id.callback_query.from.id 

그러나 "from"은 예약어입니다.

JSON 구조체를 수정할 수 없습니다.

+1

을 당신이 점 표기법을 사용하는 방법? 파이썬은 json 객체에 대한 구문을 허용하지 않으므로 오류 자체가 그 자체보다는 그 자체를 사용하는 것과 관련되어있다. 실제 오류 추적을 추가하십시오 –

+0

오류 메시지가 나타 납니까? 질문에 표시하십시오. 당신은 객체 요소 ie로'from'을 사용할 수 있습니다. 'self.from' – furas

+0

"나는이 json이있다 :"=> 이것은 "슨"이 아니라 파이썬'dict'이다. JSON은 텍스트 형식이며 형식이 아닙니다. –

답변

3

당신은 대괄호를 사용할 수 있습니다

update_id.callback_query['from'].id 
+0

print update.callback_query [ 'from']. id return 'from' – simone989

2

파이썬은 당신이 . 연산자를 사용하여 JSON 구조체에서 탐색 할 수 없습니다.

당신은 색인 연산자를 사용하여 모든 구성원을 지정해야합니다 :

print(data["update_id"]) 
print(data["callback_query"]["from"]["id"]) 
+1

이것이 실제 해결책이라고 생각합니다. –

+0

인쇄물 업데이트 [ 'callback_query'] [ 'from'] [ 'id'] – simone989

+0

돌아 오는 중 '012'에서 반환 – simone989