python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > Python设置utf-8为默认编码

Python如何设置utf-8为默认编码的问题

作者:子不语

这篇文章主要介绍了Python如何设置utf-8为默认编码的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

Python设置utf-8为默认编码

python默认的编码是ASCII,通过sys.getdefaultencoding()可以查看默认编码。

当程序中出现非asc编码时,python的处理常常会有乱码的错误,一般有如下几种方法:

代码临时更改

import sys  
reload(sys)  
sys.setdefaultencoding('utf8')  

只在程序执行时临时生效,系统默认编码并没有改变。

此时如果还有编码错误 ,需要用到encode(‘utf-8’),将字符串显式声明编码。

字符串.encode('utf-8')

目录文件更改

创建一个叫 sitecustomize.py的文件,因为python在启动的时候会去加载这个文件,如果要修改一些启动的变量就可以把操作写在这个文件。

在python安装目录的Lib\site-packages文件夹下新建一个sitecustomize.py文件

在sitecustomize.py填写如下代码

# encoding=utf8  
import sys  
  
reload(sys)  
sys.setdefaultencoding('utf8') 

python2.7永久地将默认编码设置为utf-8

网上推荐了两种方法

编辑site.py, 修改setencoding()函数, 强制设置为 utf-8

增加一个名为 sitecustomize.py, 推荐存放的路径为 site-packages 目录下

sitecustomize.py 是在 site.py 被import 执行的,因为 sys.setdefaultencoding() 是在 site.py 的结尾处被删除的,所以,可以在 sitecustomize.py 使用 sys.setdefaultencoding().

#file name: sitecustomize.py
import sys
sys.setdefaultencoding(‘utf-8')

既然 sitecustomize.py 能被自动加载, 所以除了设置编码外, 也可以设置一些其他的东西.

实践

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文