python写入文件中文乱码,python打开是乱码

  python写入文件中文乱码,python打开是乱码

  Python2.7没有处理好中文编码的问题。这几天我们在抓取数据的时候经常会遇到中文编码问题。但我不知道编码原理,也没时间深究。这里只是从应用的角度总结一下,

  1.设置默认代码。Python代码中任何地方出现中文,编译时都会报错。这时可以在代码的第一行加上相应的解释,明确utf-8编码格式,可以解决一般情况下的中文错误。当然编程中遇到的具体问题需要具体分析。

  #编码:utf-8或#-*-编码:utf-8-*-导入系统重新加载(sys)系统。设置默认编码( utf8) #将默认编码格式设置为 utf-8 2。文件读写。文件读写时遇到中文,一般不会报错,但最终运行结果显示乱码,给后续处理带来不便。

  2.1读取文件在读取文件时,如果文件路径和文件名中有汉字,需要使用unicode函数将其编码为‘utf-8’格式,然后正常读取文件。以我常用的熊猫read_csv函数为例。使用以下代码,我可以成功读取名为“POI汇总表”的csv文件,并将其保存在DataFrame数据类型的poi_list中。

  将panda导入为pdinpath= c: \ \ poi汇总表. csv * * path=unicode (inpath, utf-8) * * poi _ list=pd。read _ csv (path) 2.2用中文文件名和乱码文件名写文件。

  当你想把程序的运行结果保存到一个文本文件中时,如果文本文件的名称中有中文,那么如果不进行处理,文件名就会出现乱码。用unicode函数编码可以解决。Unicode(中文。csv , utf-8 )

  文件内容为中文,excel打开内容乱码。

  如果将包含中文的结果导出为csv文件,默认用Excel打开文件时,文件内容会出现乱码,但用文本编辑器打开时不会出现乱码。这是因为Excel的默认编码方法是“GBK”,而文本编辑器的默认格式是“UTF-8”。使用编解码器包添加语句f.write(编解码器。BOM_UTF8)。

  Name= language f=open (name 。csv , w) f. write (123,language) f.close()#修改代码importcodecsf=open(* * Unicode(name )。csv , UTF-8) * *,W) #文件名不是乱码* * f.write(编解码器。BOM _ UTF8) # Excel打开内容乱码的核心语句**f.write(123,language) f.close()输出结果:

  #文件名:宣。csv#Excel打开123轩#文本编辑器打开123,语言#编码后#文件名:语言。csv#Excel打开123语言#文本编辑器打开123,语言

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: