前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python字符编码与转码

python字符编码与转码

作者头像
py3study
发布2020-01-13 20:26:45
4.7K0
发布2020-01-13 20:26:45
举报
文章被收录于专栏:python3python3

python 2.x 字符编码与转码

打印系统默认编码格式

代码语言:javascript
复制
import sys
print(sys.getdefaultencoding())

UTF-8 转 gbk

方式:utf-8--转成--unicode--转成--gbk

代码语言:javascript
复制
a = "你好"
print a
utf8_to_unicode = a.decode("utf-8")                 #utf-8转unicode
print utf8_to_unicode
unicode_to_gbk = utf8_to_unicode.encode("gbk")      #unicode转utf-8
print unicode_to_gbk

gbk 转UTF-8

方式:gbk--转成--unicode--转成--utf-8

代码语言:javascript
复制
gbk_to_unicode = unicode_to_gbk.decode("gbk")       #gbk转unicode
print gbk_to_unicode
unicode_to_utf8 = gbk_to_unicode.encode("utf-8")    #unicode转uft-8
print unicode_to_utf8

总结:

    1.python2.X 默认编码是ascii ;支持中文需要加“ #-*- coding:utf-8 ”;

    2.gbk、utf-8之间的转码必须先转码成unicode ;

python 3.x 字符编码与转码

字符编码与转码

UTF-8 可变长编码格式

python3.x 在转码的时候,同时把字符变成一个bytes类型;例如:b'\xc4\xe3\xba\xc3' ;

python3.X 默认的编码是unicode 支持中文;

打印系统默认编码格式

代码语言:javascript
复制
import sys
print(sys.getdefaultencoding())

utf-8 转 gbk

由于python3.0 默认unicode 支持中文,所以输入中文,可以直接转gbk ;

代码语言:javascript
复制
a = "你好"
print(a)
unicode_to_gbk = a.encode("gbk")    #unicode 转 gbk
print(unicode_to_gbk)

utf-8 转 gbk

这里编码转化顺序:unicode--转成--utf-8--转成--unicode--转成--gbk;和上边一样的结果。

代码语言:javascript
复制
a = "你好"
print(a)
moren_to_utf8 = a.encode("utf-8")                   
#等于moren_to_utf8 = a.encode()   因为系统编码是utf-8
print(type(moren_to_utf8.decode("utf-8")))          
#utf-8 格式 decode成unicode 就成了一个字符串;
utf8_to_unicdoe = moren_to_utf8.decode("utf-8")
print(utf8_to_unicdoe)
unicode_to_gbk = utf8_to_unicdoe.encode("gbk")
print(unicode_to_gbk)

gbk 转 utf-8

代码语言:javascript
复制
gbk_to_unicode = unicode_to_gbk.decode("gbk")       #gbk 转 unicode
print(gbk_to_unicode)
unicode_to_utf8 = gbk_to_unicode.encode("utf-8")    #unicode 转 utf-8
print(unicode_to_utf8)

总结:

    1.python3.x 默认编码是unicode,支持中文;

    2.python3.x 在转码的时候,同时把字符变成一个bytes类型;例如:b'\xc4\xe3\xba\xc3' ;

    3.python3.x 转码成了bytes类型之后,想显示成中文decode成unicode 就成了一个字符串;

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-07-15 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档