极客小将

您现在的位置是:首页 » python编程资讯

资讯内容

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

极客小将2021-01-06-
简介python写入中文乱码的解决方法:1、文件名有中文,文件名乱码 当想要将程序运行结果保存到文本文件时,文本文件的命名中如果有中文,不做处理文件名会出现乱码。利用unicode函数进行编码可解决。unicode(‘中文.csv’,’utf-8’)2、文件内容有中文,excel打开内容乱码&

Ncr少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

python写入中文乱码的解决方法:
Ncr少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

1、文件名有中文,文件名乱码 Ncr少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

当想要将程序运行结果保存到文本文件时,文本文件的命名中如果有中文,不做处理文件名会出现乱码。利用unicode函数进行编码可解决。Ncr少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

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

2、文件内容有中文,excel打开内容乱码 Ncr少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

如果将包含中文的结果输出到csv文件,一般默认使用Excel打开文件时,文件内容会出现乱码,而使用文本编辑器打开不会乱码。Ncr少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

这是因为Excel默认的编码方式为‘GBK‘,而文本编辑器默认的格式为‘utf-8’。Ncr少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

使用codecs包在创建文件后添加语句f.write(codecs.BOM_UTF8)可解决。Ncr少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

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知识请关注Python自学网。Ncr少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

网友点评

共有5条评论来说两句吧...

在线客服