2017-02-24 19 views
2

PythonスクリプトからJSON値にアクセスしようとしています。私がアクセスしようとしている値は、唯一の「名前」であるPythonスクリプトにJSONデータファイルを使用していることを、私はどのように行うことが可能で助けを本当に感謝:私のtest.pyファイル内PythonプログラムでJSONデータを表示する

"restaurants": [ 
{ 
    "restaurant": { 
    "R": { 
     "res_id": 9101083 
    }, 
    "id": "9101083", 
    "name": "My Meat Wagon", 
    "url": "https://www.zomato.com/dublin/my-meat-wagon-smithfield?utm_source=api_basic_user&utm_medium=api&utm_campaign=v2.1", 
    "location": { 
     "address": "Market Square, Smithfield, Dublin Dublin 7", 
     "locality": "Smithfield", 
     "city": "Dublin", 
     "city_id": 91, 
     "latitude": "53.3489980000", 
     "longitude": "-6.2788120000", 
     "zipcode": "Dublin 7", 
     "country_id": 97, 
     "locality_verbose": "Smithfield, Dublin" 
    }, 

私は

を持っています
with open('data.json') as data_file:  
    data = json.load(data_file) 
    data["restaurant"]["name"] 
    print data 

私は何をすればいいのですか?プログラムはレストラン名を取得するだけですか?

答えて

2

単にdata["restaurant"]["name"]と書いてください。do辞書で意味のあるものはまだ見つかっています。値を返してから何もしません。特に、dataが何を参照するかは変わりません。あなたはそれを望んでいた場合は、次のように記述する必要があります:あなたはJSON構造の内側に何かをアクセスする能力を失うので

data = data["restaurant"]["name"] 

私は、そのかかわらずやってお勧めしません。代わりに、値だけ印刷:((ValueErrorを送出しERRMSGを:

print data["restaurant"]["name"] 
+0

感謝し、私はそれが私がファイルに2つ目のJSONオブジェクトを追加するとき、一つの場所を表示するには、仕事と私は取得していますプログラムを実行しようとするようになりました"エクストラ・データ"、S、端部は、LEN(S))) 私の現在のJSONファイルがある: '{ "レストラン":{ "R":{ "RES_ID":9101083 }、 "名前": "私の肉ワゴン" }}、{ "レストラン":{ "R":{ "RES_ID":9101628 }、 "name": "Wowburger" } } ' – Abdul

関連する問題