簡體   English   中英

在Python中從JSON文件讀取

[英]Reading from JSON file in Python

變量數據具有以下JSON

{
   "destination_addresses" : [ "Stade Leopold Sedar Senghor, Route de Yoff, Dakar, Senegal" ],
   "origin_addresses" : [ "Unnamed Road, Dakar, Senegal" ],
   "rows" : [
      {
         "elements" : [
            {
               "distance" : {
                  "text" : "13.0 km",
                  "value" : 13007
               },
               "duration" : {
                  "text" : "23 mins",
                  "value" : 1383
               },
               "status" : "OK"
            }
         ]
      }
   ],
   "status" : "OK"
}

然后,我運行以下代碼:

parsed =  json.loads(data)

我想將距離“文本”和“值”以及持續時間“文本”,“值”和“狀態”存儲到python變量中。 我嘗試了以下代碼,但沒有成功:

dist = int(parsed['rows']['elements']['distance']['value'])

但是我遇到一個錯誤

元素是列表,因此您需要指定一個索引:

dist = int(parsed['rows'][0]['elements'][0]['distance']['value'])

這里有工作代碼。 我剛剛做了些改動,效果很好。 訪問字典有點混亂。 我會盡力解釋。 json.dumps將str序列化為json obj。 在這里獲取更多信息。 json.dumps

 data ={
   "destination_addresses" : [ "Stade Leopold Sedar Senghor, Route de Yoff, Dakar, Senegal" ],
   "origin_addresses" : [ "Unnamed Road, Dakar, Senegal" ],
   "rows" : [
      {
         "elements" : [
            {
               "distance" : {
                  "text" : "13.0 km",
                  "value" : 13007
               },
               "duration" : {
                  "text" : "23 mins",
                  "value" : 1383
               },
               "status" : "OK"
            }
         ]
      }
   ],
   "status" : "OK"
}


data_string = json.dumps(data)
parsed =  json.loads(data_string)

print parsed['rows'][0]['elements'][0]['distance']['text']

當您在字典中有一個列表時,首先必須引用您要訪問的索引(整數),然后再使用名稱('string')引用字典索引。 如您在代碼的最后一行中所見。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM