解决python3写入csv乱码的方法
这篇文章将为大家详细讲解有关解决python3写入csv乱码的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
Python写csv文件
Python提供了内置模块读写csv文件,这里我只用到了写,读这里就不做介绍了,也不难,主要是解决乱码问题。
defsave2csv(file_name=None,header=None,data=None):"""保存成CSV格式文件,方便Excel直接打开:paramfile_name:保存的文件名:paramheader:表头,每一列的名字:paramdata:具体填充数据:return:"""iffile_nameisNoneorisinstance(file_name,basestring)isFalse:raiseException('保存CSV文件名不能为空,并且必须为字符串类型')iffile_name.endswith('.csv')isFalse:file_name+='.csv'file_obj=open(file_name,'wb')file_obj.write(codecs.BOM_UTF8)#防止乱码writer=csv.writer(file_obj)ifdataisNoneorisinstance(data,(tuple,list))isFalse:raiseException('保存CSV文件失败,数据为空或者不是数据类型')ifheaderisnotNoneandisinstance(header,(tuple,list))isTrue:writer.writerow(header)forrowindata:writer.writerow(row)
注意:有三句话就是为了防止乱码的
file_obj=open(file_name,'wb')file_obj.write(codecs.BOM_UTF8)#防止乱码writer=csv.writer(file_obj)
在文件头部写入codecs.BOM_UTF8就能防止乱码了,文件都是utf-8编码格式的。
关于解决python3写入csv乱码的方法就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。