前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【hacker的错误集】解决写入csv出现乱码和空行问题

【hacker的错误集】解决写入csv出现乱码和空行问题

作者头像
hacker707
发布2022-11-27 09:53:47
6710
发布2022-11-27 09:53:47
举报
文章被收录于专栏:hacker的个人博客

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

hacker错误集

错误内容

代码语言:javascript
复制
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) ✅改正后代码:

代码语言:javascript
复制
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)
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-05-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • hacker错误集
  • 错误内容
    • 错误分析
      • 解决方案
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档