✅作者简介:大家好我是hacker707,大家可以叫我hacker 📃个人主页:hacker707的csdn博客 🔥系列专栏:hacker的错误集 💬推荐一款模拟面试、刷题神器👉点击跳转进入网站
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)