python实现提取str字符串json中多级⽬录下的某个值
字符串多级⽬录取值:
⽐如说:
你response接收到的数据是这样的。
你现在只需要取到itemstring 这个字段下的值。其他的都不要!
思路就是:字符串是个json格式(或转为json格式),然后str转为字典dict,然后循环遍历按照key来取值。
你的data是个字典然后item_list是data的Key ,item_list是个数组,这个⾥⾯的数组中的每个元素都是⼀个字典。
因此就是dict多级路径按key取值。
# 多级⽬录提取-dict
print(type(response))
print())
result = json.) # 字符串转字典
print(type(result))
for i in result["data"]["item_list"]:
print(i["itemstring"])
结果》》》
<class 'dels.Response'>
<class 'str'>
<class 'dict'>
提取的值。。。。。。出现
最后获取出来的是:
所有itemstring字段的值:(遍历出来的)
python json字符串转数组看得懂的就是需要的。这是我调⽤腾讯API,然后出现返回值是⼀个含有N个字段的json数据,最后我提取出来OCR识别的部分。其他的没有要。
补充拓展:按照Json的层级提取各个字段的实例
如下所⽰:
String s = "{\"error\":0,\"status\":\"success\",\"results\":[{\"currentCity\":\"青岛\",\"index\":[{\"title\":\"穿⾐\",\"zs\":\"较冷\",\"tipt\":\"穿⾐指数\",\"des\":\"建议着厚外套加⽑⾐等服装。年⽼体弱者宜着⼤⾐、呢外套加⽺⽑衫。\"},{\"title\":\"紫外线强度\",\"zs\":\"最弱\", JSONObject jsonObject = JSON.parseObject(s);
//提取出error为 0
int error = (int) ("error");
System.out.println("error:" + error);
//提取出status为 success
String status = String("status");
System.out.println("status:" + status);
//注意:results中的内容带有中括号[],所以要转化为JSONArray类型的对象
JSONArray result = JSONArray("results");
for (int i = 0; i < result.size(); i++) {
//提取出currentCity为青岛
String currentCity = JSONObject(i).getString("currentCity");
System.out.println("currentCity:" + currentCity);
//注意:index中的内容带有中括号[],所以要转化为JSONArray类型的对象
JSONArray index = JSONObject(i).getJSONArray("index");
for (int j = 0; j < index.size(); j++) {
String title = JSONObject(j).getString("title");
System.out.println("title:" + title);
String zs = JSONObject(j).getString("zs");
System.out.println("zs:" + zs);
String tipt = JSONObject(j).getString("tipt");
System.out.println("tipt:" + tipt);
String des = JSONObject(j).getString("des");
System.out.println("des:" + des);
}
}
}
以上这篇python实现提取str字符串/json中多级⽬录下的某个值就是⼩编分享给⼤家的全部内容了,希望能给⼤家⼀个参考,也希望⼤家多多⽀持。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论