You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Python解析JSON结果:如何提取嵌套data对象中的指定字段并打印

解析JSON并提取指定字段的解决方案

没问题,针对你需要提取JSON中嵌套字段并按指定格式输出的需求,我给你准备了几种常用编程语言的实现方式:

Python 实现

Python处理JSON非常方便,用内置的json模块就能轻松搞定:

import json

# 给定的JSON数据
json_data = '{"data": {"abuseConfidenceScore": 100, "countryCode": "ZW", "domain": "dandemutande.co.zw", "hostnames": ["ip-net-196-43-114-234.africaonline.co.zw"], "ipAddress": "196.43.114.234", "ipVersion": 4, "isPublic": true, "isWhitelisted": false, "isp": "Africa Online Zimbabwe", "lastReportedAt": "2021-06-19T10:32:46+00:00"}}'

# 把JSON字符串解析成Python字典
data_dict = json.loads(json_data)

# 提取嵌套在data里的目标字段
abuse_score = data_dict['data']['abuseConfidenceScore']
is_whitelisted = data_dict['data']['isWhitelisted']

# 按要求的格式输出结果
print(f"abusedConfidenceScore {abuse_score} isWhitelisted {is_whitelisted}")

运行这段代码后,就会输出你想要的内容:abusedConfidenceScore 100 isWhitelisted false

JavaScript 实现

不管是在浏览器环境还是Node.js里,都可以用下面的方式处理:

// 给定的JSON字符串(如果已经是JS对象,直接跳过解析步骤)
const jsonString = '{"data": {"abuseConfidenceScore": 100, "countryCode": "ZW", "domain": "dandemutande.co.zw", "hostnames": ["ip-net-196-43-114-234.africaonline.co.zw"], "ipAddress": "196.43.114.234", "ipVersion": 4, "isPublic": true, "isWhitelisted": false, "isp": "Africa Online Zimbabwe", "lastReportedAt": "2021-06-19T10:32:46+00:00"}}';

// 将JSON字符串解析为JS对象
const dataObj = JSON.parse(jsonString);

// 提取目标字段
const abuseScore = dataObj.data.abuseConfidenceScore;
const isWhitelisted = dataObj.data.isWhitelisted;

// 按要求格式输出
console.log(`abusedConfidenceScore ${abuseScore} isWhitelisted ${isWhitelisted}`);

执行这段代码后,同样会输出符合要求的结果。

核心思路很简单:先把JSON数据转换成对应语言的可操作对象(Python字典/JS对象),然后通过键名或属性名访问嵌套在data里的目标字段,最后拼接成你需要的字符串格式输出就好啦~

内容的提问来源于stack exchange,提问作者Harper

火山引擎 最新活动