Python编码类型转换方法详解

 更新时间:2016年07月01日 09:41:06   作者:wuwenjunwwj  
这篇文章主要介绍了Python编码类型转换方法,结合实例形式详细分析了Python针对各种常见编码的转码与解码等操作技巧,需要的朋友可以参考下
(福利推荐:【腾讯云】服务器最新限时优惠活动,云服务器1核2G仅99元/年、2核4G仅768元/3年,立即抢购>>>:9i0i.cn/qcloud

(福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun

本文实例讲述了Python编码类型转换方法。分享给大家供大家参考,具体如下:

1:Python和unicode

为了正确处理多语言文本,Python在2.0版后引入了Unicode字符串。

2:python中的print

虽然python内部需要将文本编码转换为unicode编码来处理,而终端显示工作则由传统的Python字符串完成(实际上,Python的print语句根本无法打印出双字节的Unicode编码字符)。

python的print会对输出的unicode编码(对其它非unicode编码,print会原样输出)做自动的编码转换(输出到控制台时),而文件对象的write方法就不会做,因此,当一些字符串用print输出正常时,write到文件确不一定和print的一样。

在linux下是按照环境变量来转换的,在linux下使用locale命令就可以看到。print语句它的实现是将要输出的内容传送了操作系统,操作系统会根据系统的编码对输入的字节流进行编码。

>>>str='学习python'
>>> str
'\xe5\xad\xa6\xe4\xb9\xa0python' #asII编码
>>> print str
学习python
>>> str=u'学习python'
>>> str       ####unicode编码
'\xe5u\xad\xa6\xe4\xb9\xa0python'

3: python中的decode

将其他字符集转化为unicode编码(只有中文字符才需要转换)

>>> str='学习'
>>> ustr=str.decode('utf-8')
>>> ustr
u'\u5b66\u4e60'

这样就对中文字符进行了编码转换,可用python进行后续的处理;(如果不转换的话,python会根据机器的环境变量进行默认的编码转换,这样就可能出现乱码)

4:python中的encode

将unicode转化为其它字符集

>>> str='学习'
>>> ustr=str.decode('utf-8')
>>> ustr
u'\u5b66\u4e60'
>>> ustr.encode('utf-8')
'\xe5\xad\xa6\xe4\xb9\xa0'
>>> print ustr.encode('utf-8')
学习

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python编码操作技巧总结》、《Python图片操作技巧总结》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

希望本文所述对大家Python程序设计有所帮助。

相关文章

  • Python实现在不同坐标系中绘制曲线

    Python实现在不同坐标系中绘制曲线

    这篇文章主要为大家学习介绍了Python如何实现在不同坐标系中绘制曲线,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起了解一下
    2023-07-07
  • Python中的pyecharts库使用总结

    Python中的pyecharts库使用总结

    这篇文章主要介绍了Python中的pyecharts库使用总结,Pyecharts 提供了一个简单而直观的 API 接口,使得使用者无需了解复杂的 JavaScript 语法,即可通过 Python 代码实现高度定制化的图表设计,需要的朋友可以参考下
    2023-12-12
  • Python统计字符串中英文字母、空格、数字和其它字符的个数

    Python统计字符串中英文字母、空格、数字和其它字符的个数

    这篇文章主要给大家介绍了关于Python统计字符串中英文字母、空格、数字和其它字符的个数的相关资料,本文实例讲述了python统计字符串中指定字符出现次数的方法,需要的朋友可以参考下
    2023-06-06
  • PyTorch的自适应池化Adaptive Pooling实例

    PyTorch的自适应池化Adaptive Pooling实例

    今天小编就为大家分享一篇PyTorch的自适应池化Adaptive Pooling实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-01-01
  • 在 Pycharm 安装使用black的方法详解

    在 Pycharm 安装使用black的方法详解

    这篇文章主要介绍了如何在 Pycharm 安装使用black的相关知识,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-04-04
  • Python有关Unicode UTF-8 GBK编码问题详解

    Python有关Unicode UTF-8 GBK编码问题详解

    本文主要介绍了Python有关Unicode UTF-8 GBK编码问题详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-08-08
  • Python循环语句For?Range用法示例详解

    Python循环语句For?Range用法示例详解

    这篇文章主要为大家介绍了Python循环语句For?Range用法示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-09-09
  • python基于隐马尔可夫模型实现中文拼音输入

    python基于隐马尔可夫模型实现中文拼音输入

    这篇文章主要介绍了python基于隐马尔可夫模型实现中文拼音输入的相关资料,需要的朋友可以参考下
    2016-04-04
  • Python中模块的使用--binascii模块用法

    Python中模块的使用--binascii模块用法

    这篇文章主要介绍了Python中模块的使用--binascii模块用法,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05
  • 基于selenium及python实现下拉选项定位select

    基于selenium及python实现下拉选项定位select

    这篇文章主要介绍了基于selenium及python实现下拉选项定位select,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-07-07

最新评论

?


http://www.vxiaotou.com