如何将Pandas DataFrame转换为指定格式的Word文档?现有代码未达预期
修改代码实现预期格式
要生成你想要的「列名: 值」格式的Word文档,需要替换原代码中创建表格的逻辑,改为逐行生成段落内容。以下是修改后的完整代码:
import pandas as pd import docx data = pd.DataFrame({'Weight':[45, 88, 56, 15, 71], 'Name':['Sam', 'Andrea', 'Alex', 'Robin', 'Kia'], 'Age':[14, 25, 55, 8, 21]}) df = pd.DataFrame(data) # 调整列顺序以匹配示例输出的顺序 df = df[['Name', 'Age', 'Weight']] # 初始化Word文档 doc = docx.Document() # 遍历DataFrame中的每一行数据 for idx, row in df.iterrows(): # 为每个列名和对应值生成单独段落 for col_name, value in row.items(): doc.add_paragraph(f"{col_name}: {value}") # 在每条记录之间添加空行(最后一条记录后不添加) if idx != len(df) - 1: doc.add_paragraph() # 保存文档 doc.save(r'C:\Users\Downloads\table 1.docx')
关键修改说明:
- 调整列顺序:通过
df[['Name', 'Age', 'Weight']]重新排列列,确保输出顺序与示例一致。 - 替换表格逻辑:去掉创建表格的代码,改为遍历每行数据,为每个列值对生成独立的段落。
- 添加分隔空行:在每条记录处理完成后添加空段落,实现示例中的记录分隔效果。
内容的提问来源于stack exchange,提问作者bkcollection
相关产品推荐
相关产品推荐

