Python如何拆分API返回的嵌套数据集并解决字符串索引报错问题
问题原因与Python解决方案
报错根因
- 索引键名拼写错误:原字典的日期键为
9/30/2018,代码中错误写为19/30/2018 - 数据类型错误:当前使用的
api变量是JSON字符串类型,没有转换为Python字典,无法通过字符串键直接索引
实现步骤
步骤1:JSON字符串转Python字典
如果你从API拿到的原始返回是字符串格式,先通过json库转换:
import json # 替换为你实际存储API返回结果的变量 api_raw = "你的API返回的原始JSON字符串" api = json.loads(api_raw)
如果你的api已经是字典类型,可跳过此步骤。
步骤2:拆分数据
方式1:手动拆分生成独立变量
严格匹配原字典的键名取值即可:
s_9_30_2018 = api["9/30/2018"] s_9_30_2019 = api["9/30/2019"] s_9_30_2020 = api["9/30/2020"] s_ttm = api["ttm"]
方式2:批量结构化处理(推荐用于SQL入库)
如果后续要批量导入SQL,建议直接生成结构化列表,不用单独声明变量,效率更高:
sql_ready_data = [] for date_key, indicator_dict in api.items(): # 将日期作为单独字段存入,方便SQL表构建日期维度 data_row = {"stat_date": date_key} data_row.update(indicator_dict) sql_ready_data.append(data_row)
处理后的sql_ready_data可直接对接pandas、SQLAlchemy等库批量写入数据库。
内容的提问来源于stack exchange,提问作者Anon
相关产品推荐
相关产品推荐

