python3 中文乱码与默认编码格式设定方法

yipeiwu_com6年前Python基础

python默认编码格式是utf-8。在python2.7中,可以通过sys.setdefaultencoding('gbk')设定默认编码格式,而在python3.3中sys.setdefaultencoding()这个函数已经没有了。在python3.3中该如何设置内置的默认编码格式啊!急求!!!

(类似于“#coding:gbk”这种就不必来说了。能让import sys print(sys.getdefaultencoding())输出“gbk“的大神请进!!!)

python 3和2很大区别就是python本身改为默认用unicode编码。

字符串不再区分"abc"和u"abc", 字符串"abc"默认就是unicode,不再代表本地编码、

由于有这种内部编码,像c#和java类似,再没有必要在语言环境内做类似设置编码,比如“sys.setdefaultencoding”;

也因此也python 3的代码和包管理上打破了和2.x的兼容。2.x的扩展包要适应这种情况改写。

另一个问题是语言环境内只有unicode怎么输出gbk之类的本地编码。

答按惯例都在(序列化)输出时才转换成本地编码。

比如

file.write("GBK的中文".encode("GBK"))

python环境内字符串用str.encode("GBK")方法输出成字节串用于和其他环境交流。

以上这篇python3 中文乱码与默认编码格式设定方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

基于Django统计博客文章阅读量

如何精确地记录一篇文章的阅读量是一个比较复杂的问题,不过对于我们的博客来说,没有必要记录的那么精确。因此我们使用一种简单但有效的方式来记录博客文章的阅读量:文章每被浏览一次,则其阅读量...

对python_discover方法遍历所有执行的用例详解

对python_discover方法遍历所有执行的用例详解

当我们写了一个单个py的测试文件时直接运行就ok了,但当我们有很多很多个这样的py时,难道要一个一个的点击来运行吗,当然不是。我们可以通过discover方法来找到所有的用例。 下面直接...

Python获取脚本所在目录的正确方法

1.以前的方法如果是要获得程序运行的当前目录所在位置,那么可以使用os模块的os.getcwd()函数。如果是要获得当前执行的脚本的所在目录位置,那么需要使用sys模块的sys.path...

深入了解Python iter() 方法的用法

今天我们来介绍下Python基础教程学习之iter() 方法另外的用法。据说很少有人知道这个用法! 一、上代码、学用法 我们都比较熟悉 iter(obj),会返现一个迭代器,如果 ob...

利用Python脚本生成sitemap.xml的实现方法

安装lxml 首先需要pip install lxml安装lxml库。 如果你在ubuntu上遇到了以下错误: #include "libxml/xmlversion.h" co...