python2写入文件乱码怎么解决?

python

python写入中文乱码的解决方法:

1、文件名有中文,文件名乱码 

当想要将程序运行结果保存到文本文件时,文本文件的命名中如果有中文,不做处理文件名会出现乱码。利用unicode函数进行编码可解决。

unicode(‘中文.csv’,’utf-8’)

2、文件内容有中文,excel打开内容乱码 

如果将包含中文的结果输出到csv文件,一般默认使用Excel打开文件时,文件内容会出现乱码,而使用文本编辑器打开不会乱码。

这是因为Excel默认的编码方式为‘GBK‘,而文本编辑器默认的格式为‘utf-8’。

使用codecs包在创建文件后添加语句f.write(codecs.BOM_UTF8)可解决。

name='语文'

f = open(name+'.csv','w')

f.write('123,语文')

f.close()

#修改编码

import codecs

f = open(**unicode(name+'.csv','utf-8')**,'w')  # 文件名不乱码

**f.write(codecs.BOM_UTF8)  # excel打开内容不乱码的核心语句**

f.write('123,语文')

f.close()

更多Python知识请关注。

以上是 python2写入文件乱码怎么解决? 的全部内容, 来源链接: utcz.com/z/527741.html

回到顶部