您好,登錄后才能下訂單哦!
小編給大家分享一下python如何實現提取str字符串/json中多級目錄下的某個值,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
字符串多級目錄取值:
比如說:
你response接收到的數據是這樣的。
你現在只需要取到itemstring 這個字段下的值。其他的都不要!
思路就是:字符串是個json格式(或轉為json格式),然后str轉為字典dict,然后循環遍歷按照key來取值。
你的data是個字典 然后item_list是data的Key ,item_list是個數組,這個里面的數組中的每個元素都是一個字典。
因此就是dict多級路徑按key取值。
# 多級目錄提取-dict print(type(response)) print(type(response.text)) result = json.loads(resp.text) # 字符串轉字典 print(type(result)) for i in result["data"]["item_list"]: print(i["itemstring"]) 結果》》》 <class 'requests.models.Response'> <class 'str'> <class 'dict'> 提取的值。。。。。。出現
最后獲取出來的是:
所有itemstring字段的值:(遍歷出來的)
看得懂的就是需要的。這是我調用騰訊API,然后出現返回值是一個含有N個字段的json數據,最后我提取出來OCR識別的部分。其他的沒有要。
補充拓展:按照Json的層級提取各個字段的實例
如下所示:
String s = "{\"error\":0,\"status\":\"success\",\"results\":[{\"currentCity\":\"青島\",\"index\":[{\"title\":\"穿衣\",\"zs\":\"較冷\",\"tipt\":\"穿衣指數\",\"des\":\"建議著厚外套加毛衣等服裝。年老體弱者宜著大衣、呢外套加羊毛衫。\"},{\"title\":\"紫外線強度\",\"zs\":\"最弱\",\"tipt\":\"紫外線強度指數\",\"des\":\"屬弱紫外線輻射天氣,無需特別防護。若長期在戶外,建議涂擦SPF在8-12之間的防曬護膚品。\"}],}]}"; JSONObject jsonObject = JSON.parseObject(s); //提取出error為 0 int error = (int) jsonObject.get("error"); System.out.println("error:" + error); //提取出status為 success String status = jsonObject.getString("status"); System.out.println("status:" + status); //注意:results中的內容帶有中括號[],所以要轉化為JSONArray類型的對象 JSONArray result = jsonObject.getJSONArray("results"); for (int i = 0; i < result.size(); i++) { //提取出currentCity為 青島 String currentCity = result.getJSONObject(i).getString("currentCity"); System.out.println("currentCity:" + currentCity); //注意:index中的內容帶有中括號[],所以要轉化為JSONArray類型的對象 JSONArray index = result.getJSONObject(i).getJSONArray("index"); for (int j = 0; j < index.size(); j++) { String title = index.getJSONObject(j).getString("title"); System.out.println("title:" + title); String zs = index.getJSONObject(j).getString("zs"); System.out.println("zs:" + zs); String tipt = index.getJSONObject(j).getString("tipt"); System.out.println("tipt:" + tipt); String des = index.getJSONObject(j).getString("des"); System.out.println("des:" + des); } } }
以上是“python如何實現提取str字符串/json中多級目錄下的某個值”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。