解决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)

正常显示如下

上一篇下一篇

猜你喜欢

热点阅读