我使用OpenWeatherMap API構建了一個鬆散機器人功能,用戶可以在其中輸入城市的名稱,並且將顯示當前的天氣預報。使用python解析json文件
但API使用唯一的城市ID來匹配相應的城市名稱,這是json對象。
JSON文件的某些行像這個 -
[
{
"id": 707860,
"name": "Hurzuf",
"country": "UA",
"coord": {
"lon": 34.283333,
"lat": 44.549999
}
},
{
"id": 519188,
"name": "Novinki",
"country": "RU",
"coord": {
"lon": 37.666668,
"lat": 55.683334
}
},
]
我想通過JSON文件搜索和匹配正確的城市名稱,用其相應的城市ID用戶輸入的城市名稱一致,獲取相應的城市ID,該API將按照API要求處理的API調用發送。
如何在Python中實現這個東西?
查看json文件包含數千個與這兩個相似的對象,因此遍歷整個文件來搜索,比方說,最後一個對象將非常耗時且效率低下。沒有一個有效的或更好的方法來做到這一點? –
我不確定是否有任何其他方式無法迭代所有'id'。但我想我的答案指出了從你的問題提取id從json對象的方法。如果有人有更好的解決方案,我們可以等待。 –
如果我把它命名爲jsonobject = [...],那麼它顯示錯誤在第1行解析錯誤: jsonobject = [{0} {0} {0} { 期待'STRING','NUMBER','NULL','TRUE','FALSE ','{','[','undefined' –