Python CSV写入:如何让数据分别存入不同Excel单元格?
解决CSV数据无法分单元格显示的问题
你的核心问题是代码仅打印了数据,却未将数据写入CSV文件,结合Excel显示异常的情况,以下是完整解决方案:
1. 修正代码,将数据写入CSV
当前代码只执行了print输出数据列表,但没有调用CSV写入器的writerow()方法完成数据写入。修改后的代码如下:
import csv # 注意:确保已导入csv模块 fieldnames = ['name', 'deviceId', 'lastSync', 'type'] filename = "data.csv" with open(filename, 'w', newline='', encoding='utf-8') as csvfile: writer = csv.writer(csvfile, delimiter=',') writer.writerow(fieldnames) # 写入表头 for data in dixtt: # 新增此行,将数据写入CSV文件 writer.writerow([data['name'], data['deviceId'], data['lastSync'], data['type']]) print([data['name'], data['deviceId'], data['lastSync'], data['type']]) # 保留打印用于调试
2. Excel显示异常的额外排查
若修正代码后Excel仍将所有内容合并到同一单元格,检查以下两点:
- 确认Excel分隔符设置:打开CSV时,在文本导入向导中选择「逗号」作为分隔符;若已打开文件,可通过「数据→分列」,选择「分隔符号」并勾选「逗号」完成拆分。
- 检查数据中是否包含逗号:如果数据字段本身带逗号,
csv.writer会自动用引号包裹该字段,Excel可正确识别;若手动拼接字符串导致引号丢失,会引发单元格合并问题,建议始终使用csv模块处理CSV文件,避免手动拼接。
内容的提问来源于stack exchange,提问作者f33lthepkfromprins
相关产品推荐
相关产品推荐

