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设计】。

相关文章

Python 实现网页自动截图的示例讲解

Python 实现网页自动截图的示例讲解

背景介绍 最近在为部门编写一个自动化测试工具,工具涉及到一个功能,即 将自动化测试生成的html报告截图,作为邮件正文,html文件上传到web服务器以链接形式添加到邮件中,最后发送邮件...

使用pyecharts生成Echarts网页的实例

pyecharts是一个封装百度开源图表库echarts的包,使用pyecharts可以生成独立的网页,也可以在flask、django中集成使用。 示例如下: from pyech...

python+pygame实现坦克大战

python+pygame实现坦克大战

本文实例为大家分享了python+pygame实现坦克大战的具体代码,供大家参考,具体内容如下 一、首先导入pygame库 二、源码分享 #coding=utf-8 impo...

Python获取指定字符前面的所有字符方法

在用C和python编程时遇到的一个问题是: 用网口发送过来1k数据,数据格式是json,但是发送时不知道需要的大小,因为不同任务大小不一样,所以统一发送1024字节,统一接收1024了...

django 通过ajax完成邮箱用户注册、激活账号的方法

一、图片验证码 django-simple-captcha配置 1.在pycharm中,File====》Settings====》Project:项目名====》Project Int...