2017-03-05 3 views
1
{ 
    "response": { 
     "version": "0.1", 
     "termsofService": "http://www.wunderground.com/weather/api/d/terms.html", 
     "features": { 
      "conditions": 1 
     } 
    }, 

    "current_observation": { 
     "image": { 
      "url": "http://icons.wxug.com/graphics/wu2/logo_130x80.png", 
      "title": "Weather Underground", 
      "link": "http://www.wunderground.com" 
     }, 
     "display_location": { 
      "full": "San Francisco, CA", 
      "city": "San Francisco", 
      "state": "CA", 
      "state_name": "California", 
      "country": "US", 
      "country_iso3166": "US", 
      "zip": "94102", 
     } 
    } 
} 

私はその後、私はこのエラーは、キーJSONの辞書をつかむことはできません

Traceback (most recent call last): 
    File ".\wunder.py", line 17, in <module> 
    print(j['current_observation']['zip']) 
KeyError: 'zip' 
になるだろう上記のこのJSONデータを解析し、この

j = json.loads(string) 
keys = j.keys() 
print(keys) 
#current_observation 

print(j['current_observation']['zip']) 

を行うことによって「ジップ」の値を取得しようとしていました

これをまとめようとしているのは、JSONデータを解析してzip値を少ししか得られないことです。

+0

'印刷(キー)何を'あなたを与えますか? – user82395214

+0

JSONが正しくフォーマットされているかどうかを確認できない場合は、 'for key、j.items()の値: print key、value'を使用して反復処理できるかどうかを確認してください。 – user82395214

+1

私はjsonに2つの問題があります。 http://jsonlint.com/ 問題でJSONを入れている: 1-あなたが受け入れるには、以下の正しい答えを持っているzip' –

答えて

3

あなたはdisplay_locationによってマッピングされた辞書逃した:

print(j['current_observation']['display_location']['zip']) 
関連する問題