错误内容
import csv # 数据 person = [ {'姓名': 'xxx', '年龄': 18, '爱好': '学习python'}, {'姓名': 'yyy', '年龄': 18, '爱好': '学习python'}, {'姓名': 'zzz', '年龄': 19, '爱好': '学习python'}, ] # 表头 header = ['姓名', '年龄', '爱好'] with open('person.csv', 'w', encoding='utf-8') as file_obj: # 创建对象 dictWriter = csv.DictWriter(file_obj, header) # 写表头 dictWriter.writeheader() # 写入数据 dictWriter.writerows(person)
错误分析
用csv成功写入数据打开Excel会出现乱码和空行😐😐😐
居然:那应该怎么解决呢
解决方案
处理空行问题
在写入数据时传入newline=’ ’
处理写入Excel打开会出现乱码问题
只需要在原来写入的编码格式utf-8后面加-sig处理一下(utf-8-sig)
✅改正后代码:
import csv # 数据 person = [ {'姓名': 'xxx', '年龄': 18, '爱好': '学习python'}, {'姓名': 'yyy', '年龄': 18, '爱好': '学习python'}, {'姓名': 'zzz', '年龄': 19, '爱好': '学习python'}, ] # 表头 header = ['姓名', '年龄', '爱好'] with open('person.csv', 'w', encoding='utf-8-sig', newline='') as file_obj: # 创建对象 dictWriter = csv.DictWriter(file_obj, header) # 写表头 dictWriter.writeheader() # 写入数据 dictWriter.writerows(person)
结束语🏆🏆🏆
🔥推荐一款模拟面试、刷题神器网站
点击链接注册即可
1、算法篇(398题):面试必刷100题、算法入门、面试高频榜单
2、SQL篇(82题):快速入门、SQL必知必会、SQL进阶挑战、面试真题
3、大厂笔试真题:字节跳动、美团、百度、腾讯…