Python 设置 UTF8 编码 reload(sys)
来源:互联网 发布:网络代购图片 编辑:程序博客网 时间:2024/06/06 00:20
python在安装时,默认的编码是ascii,当程序中出现非ascii编码时,python的处理常常会报这样的错UnicodeDecodeError: 'ascii' codec can't decode byte 0x?? in position 1: ordinal not in range(128),python没办法处理非ascii编码的,此时需要自己设置将python的默认编码,一般设置为utf8的编码格式。
设置默认编码时使用函数:sys.setdefaultencoding('utf8')可能会报AttributeError: 'module' object has no attribute 'setdefaultencoding'
的错误,执行reload(sys),再执行以上命令就可以顺利通过。
此时再执行sys.getdefaultencoding()就会发现编码已经被设置为utf8的了,但是在解释器里修改的编码只能保证当次有效,在重启解释器后,会发现,编码又被重置为默认的ascii了,那么有没有办法一次性修改程序或系统的默认编码呢。
如果需要在运行时(就是整个解释器启动完之后)进行setdefaultencoding,就只能重新加载sys这个模块。
解决方法(代码头加入如下代码):import sys
reload(sys)
sys.setdefaultencoding('utf8')
原文链接
0 0
- Python 设置 UTF8 编码 reload(sys)
- python为什么需要reload(sys)后设置编码
- python为什么需要reload(sys)后设置编码
- Python - reload(sys) + sys.setdefaultencoding
- 设置python的默认编码为utf8
- 设置python的默认编码为utf8
- 设置python的默认编码为utf8
- 设置python的默认编码为utf8
- 设置python的默认编码为utf8
- 设置python的默认编码为utf8
- 设置python的默认编码为utf8
- python reload(sys)找不到,name 'reload' is not defined
- PHP设置UTF8编码
- 设置编码为UTF8
- mysql编码设置utf8
- python reload sys 后才能setdefaultencoding 的原因
- mysql编码设置为utf8
- cc--mysql utf8编码设置
- java 学习笔记 继承与接口(二)
- 深度学习算法实践8---BP算法详解
- Discuz!教程之批量替换帖子中的内容
- markdown编辑器用法
- 加wheelCoillder后车体后剧烈晃动
- Python 设置 UTF8 编码 reload(sys)
- Linux中shell编程需要避免的坑之shell语法篇(三)
- android连接mysql数据库,NetworkOnMainThreadException引起CommunicationsException
- 深度学习算法实践9---用Theano实现多层前馈网络
- 一份不太简短的LaTeX模板
- Window7下安装openssl完整版(亲测实现)
- RecyclerView缓存分析
- 分享几个有意思的API接口
- ubuntu安装mysql数据库遇到的问题及解决办法