设为首页 收藏本站
查看: 1123|回复: 0

[经验分享] python字符编码与转码

[复制链接]

尚未签到

发表于 2018-8-12 11:59:10 | 显示全部楼层 |阅读模式
  python 2.x 字符编码与转码
  
  打印系统默认编码格式
import sys  
print(sys.getdefaultencoding())
  UTF-8 转 gbk
  方式:utf-8--转成--unicode--转成--gbk
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
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 支持中文;
  打印系统默认编码格式
import sys  
print(sys.getdefaultencoding())
  utf-8 转 gbk
  由于python3.0 默认unicode 支持中文,所以输入中文,可以直接转gbk ;
a = "你好"  
print(a)
  
unicode_to_gbk = a.encode("gbk")    #unicode 转 gbk
  
print(unicode_to_gbk)
  utf-8 转 gbk
  这里编码转化顺序:unicode--转成--utf-8--转成--unicode--转成--gbk;和上边一样的结果。
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
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 就成了一个字符串;

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-550595-1-1.html 上篇帖子: python 经典五悉 下篇帖子: Python-异常处理与调试
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表