码迷,mamicode.com
首页 > 编程语言 > 详细

关于python内open函数encoding编码问题

时间:2019-07-16 08:23:06      阅读:554      评论:0      收藏:0      [点我收藏+]

标签:读写   mic   charm   乱码   open()   输出   编码   span   char   

自己学python的open函数时,发现在pycharm里新建一个file_name.txt文本文件,输入中文保存。再用open(file_name,‘r+‘)打开,再去读写时出现了一些问题。再三控制变量多伦测试后,总结如下:

1.当原文件为utf8编码格式,且不包含中文,则对其进行读操作,正常;对其进行写操作(非中文),正常,文件编码格式不变;
当写入中文字符时,文件编码格式变为gbk,此时pycharm中的文件会将你输入的中文显示为16进制数,并会提示你用gbk编码reload文件。
2.当原文件为utf8编码格式,若包含中文,则可能报错UnicodeDecodeError,也可能不报错,但会输出乱码。是否报错跟中文内容有关。
写入中文情况与1相同,建议用sys.getfilesystemencoding()查看系统编码格式,再在open()里改encoding。我的a=utf-8 ,open的encoding默认为‘gbk’

  

技术图片


技术图片

关于python内open函数encoding编码问题

标签:读写   mic   charm   乱码   open()   输出   编码   span   char   

原文地址:https://www.cnblogs.com/wangyi0419/p/11192593.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!