pandas读取Excel去除索引列并输出指定JSON格式问题
解决方案
问题根因
- 你读取Excel时指定了
index_col=0,会把第一列country_code设置为行索引,后续导出时不会将其作为普通字段输出,导致结构不符合预期 - 无需中转CSV格式再处理,中间步骤容易引入额外格式问题
- 你调用
to_json时参数错误,正确的格式参数为orient='records'
可直接运行的代码
import pandas as pd import json # 读取Excel,移除index_col参数,保留需要的两列即可 rft = pd.read_excel('sitedata.xlsx', sheet_name='rftemplates', usecols=['country_code', 'name']) # 直接输出符合要求的格式:每行一个独立JSON对象 print(rft.to_json(orient='records', lines=True)) # 如果需要在Python中直接使用字典格式,调用to_dict即可 result_dict_list = rft.to_dict(orient='records') # 遍历即可获取每个站点的字典数据,可直接传入API调用的参数中 for item in result_dict_list: print(item)
参数说明
orient='records':指定导出格式为「每行是一个包含列名与值对应关系的对象」lines=True:指定每个对象单独占一行,完全匹配你需要的输出格式
内容的提问来源于stack exchange,提问作者Ali
相关产品推荐
相关产品推荐

