如何将Excel表格每一行转换为Python字典组成的列表?
将Excel每行转为字典组成的列表(Pandas实现)
直接生成目标格式(推荐)
Pandas的to_dict()方法支持通过orient参数指定输出格式,用orient='records'就能直接得到每行数据对应一个字典的列表,完全不用处理按列分组的结果。
示例代码:
import pandas as pd # 读取你的Excel文件 df = pd.read_excel("你的文件路径.xlsx") # 直接生成目标列表 row_dicts = df.to_dict(orient="records")
执行后row_dicts里的每个元素就是Excel中一行数据的字典,键为列名,值为对应单元格的内容。
转换现有按列分组的字典(如果已经有了)
如果你已经拿到了默认的按列分组字典(比如df.to_dict()的结果,格式是{列名: {行索引: 单元格值}}),可以通过遍历行索引来转换:
# 假设col_grouped_dict是你现有的按列分组字典 col_grouped_dict = df.to_dict() row_dicts = [] # 获取所有行的索引(取任意一列的键即可) row_ids = list(next(iter(col_grouped_dict.values())).keys()) for idx in row_ids: # 逐个构建每行的字典 single_row = {col: col_grouped_dict[col][idx] for col in col_grouped_dict} row_dicts.append(single_row)
内容的提问来源于stack exchange,提问作者maxmyh
相关产品推荐
相关产品推荐

