解决Python写入数据到CSV中文乱码问题
2019-04-21 本文已影响0人
绝世一只猫
用Python把数据写入CSV文件是常见操作。
import csv
with open('test.csv', 'a+', newline='') as f:
writer = csv.writer(f)
for i in range(100):
row = ['兔子', '矮子', '孩子', '饺子', '妹子']
writer.writerow(row)
但是用Excel打开却变成这样。
啥,这是哪国语言?
但是用记事本打开它却恢复正常了。
这其实是因为电脑中毒了,需要重装系统 这个是系统编码的问题,微软万年不改的锅。
Program 1
直接使用WPS!我不是在给WPS打广告``我不是在给WPS打广告``我不是在给WPS打广告
但是WPS打开CSV文件确实没有中文乱码问题。
但是你可能不太想用WPS
Program 2
1. 在记事本中选择文件>>另存为
2. 选择编码格式为UTF-8,保存并覆盖
Program 3
在代码打开文件的时候指定编码格式为utf_8_sig
import csv
with open('test.csv', 'a+', newline='',encoding='utf_8_sig') as f:
writer = csv.writer(f)
for i in range(100):
row = ['兔子', '矮子', '孩子', '饺子', '妹子']
writer.writerow(row)