参考链接1:https://blog.csdn.net/VictoriaW/article/details/75314737

参考链接2:https://blog.csdn.net/sheldonwong/article/details/86684761
Unicode和str

## str 我们平时写的用引号括起来的字符串都是str类型的。
>>> x = '哈哈'
>>> x
'\xb9\xfe\xb9\xfe'
### 根据上面的打印结果,可以知道str类型的x存的其实是二进制序列,而非字符串。为什么会出现这种情况呢?我们赋给x的明明是字符串。
其实很简单,x经过了一次隐形的编码过程encode()。应该采用的是系统默认编码方案。 ## unicode 如果在引号的前面加上字符u,那么我们就得到一个unicode字符串:
>>> x = u'哈哈'
>>> x
u'\u54c8\u54c8'
### unicode对象保存的是字符串本身,而非二进制序列。比如程序中的unicode字符串中包含两个U+54c8字符。### 为了避免错误,在写入文件之前,应该用utf-8或者gbk编码方案对unicode字符串编码
>>> x = u'哈哈'
>>> x
u'\u54c8\u54c8'
>>> f = open('test.txt', 'w');
>>> x = x.encode('utf-8') #unicode -> str
>>>x
'\xe5\x93\x88\xe5\x93\x88'
>>> f.write(x)

Unicode strings can be encoded in plain strings in a variety of ways, according to whichever encoding you choose:
Unicode字符串可以用多种方式编码为普通字符串, 依照你所选择的编码(encoding):

   1 #将Unicode转换成普通的Python字符串:"编码(encode)"2 unicodestring = u"Hello world"3 utf8string = unicodestring.encode("utf-8")4 asciistring = unicodestring.encode("ascii")5 isostring = unicodestring.encode("ISO-8859-1")6 utf16string = unicodestring.encode("utf-16")7 8 9 #将普通的Python字符串转换成Unicode: "解码(decode)"10 plainstring1 = unicode(utf8string, "utf-8")11 plainstring2 = unicode(asciistring, "ascii")12 plainstring3 = unicode(isostring, "ISO-8859-1")13 plainstring4 = unicode(utf16string, "utf-16")14 15 assert plainstring1==plainstring2==plainstring3==plainstring4

转载于:https://www.cnblogs.com/yes5144/p/11523516.html

Python字符编码转换Unicode和str相关推荐

  1. python编码转换在线_Python字符编码转换Unicode和str

    ## str 我们平时写的用引号括起来的字符串都是str类型的. >>> x = '哈哈' >>> x '\xb9\xfe\xb9\xfe' ### 根据上面的打印 ...

  2. Python字符编码转换

    编码回顾 在备编码相关的课件时,在知乎上看到一段关于Python编码的回答 这哥们的这段话说的太对了,搞Python不把编码彻底搞明白,总有一天它会猝不及防坑你一把. 不过感觉这哥们的答案并没把编码问 ...

  3. python字符编码转换_Python字符和字符值(ASCII或Unicode码值)转换方法

    目的 将一个字符转化为相应的ASCII或Unicode码,或相反的操作. 方法 对于ASCII码(0~255范围) 代码如下: >>> print ord('A') 65 >& ...

  4. python基础2_3-字符编码发展史和字符编码转换

    目录 1.发展史 2.转换 1.发展史 python解释器在加载 .py 文件中的代码时,会对内容进行编码(2.x默认ascii,3.x默认unicode) ASCII(American Standa ...

  5. Qt中的字符编码转换:UTF8、Unicode、GBK、ASCII、16进制字符、16进制数值

    文章目录 前言 简述 ASCII GBK Unicode UTF-8 应用场景 开发环境 编码转换 16进制数值转换为16进制字符 16进制数值转化为字符串 16进制字符串转换为Unicode字符串 ...

  6. python 字符编码问题

    字符编码 一.字符编码的演进 ASCII GB2312    GBK1.0    GB18030 Unicode编码:国际标准字符集,它将世界各种语言的每个字符定义一个唯一的编码,以满足跨语言.跨平台 ...

  7. Python字符编码详解

    Python字符编码详解 转自http://www.cnblogs.com/huxi/archive/2010/12/05/1897271.html Python字符编码详解 本文简单介绍了各种常用的 ...

  8. 深入理解Python字符编码--转

    http://blog.51cto.com/9478652/2057896 不论你是有着多年经验的 Python 老司机还是刚入门 Python 不久,你一定遇到过UnicodeEncodeError ...

  9. python 字符编码处理_浅析Python 字符编码与文件处理

    Python字符编码 目前计算机内存的字符编码都是Unicode,目前国内的windows操作系统采用的是gbk. python2默认的字符编码方式是ASCII python3默认的字符编码方式是Un ...

最新文章

  1. 《Linux内核精髓:精通Linux内核必会的75个绝技》一HACK #6 使用localmodconfig缩短编译时间...
  2. 对Web页面元素的绝对唯一引用方法
  3. 线程的调度有抢占式或者非抢占 (转)
  4. Java中通过代理对类进行修改
  5. Maven for Eclipse 第二章 ——安装 m2eclipse插件
  6. HTML+CSS+JS实现 ❤️九宫格图片悬停遮罩层特效❤️
  7. windows聚焦图片为什么不更新了_网站内容更新,相同内容,不同网站为什么排名不一样?...
  8. 利用物联网技术为市民打造“无忧”生活
  9. 如何计算机械能的变化量,问:如何计算机械能变化量?
  10. 快速学习、快速决策、快速改变;突破自我
  11. STM32官方封装库下载方法
  12. Jmeter之Bean shell使用
  13. lumaQQ.net 学习分析
  14. 1.6万亿参数的语言模型:谷歌大脑提出Switch Transformer,预训练速度可达T5的7倍
  15. 华硕fl8000u是什么型号_华硕FL8000UN值得买吗?华硕FL8000UN笔记本全面深度评测+拆解图...
  16. 这是最好的企业管理手册
  17. C语言找中位数(一位数组)
  18. android 热更新 方案,热更新-热更新app开发的两种系统方案!
  19. 编程入门之学哪种编程语言?
  20. “腾讯TLive-无缝接流”护航各大卫视跨年晚会完美收官

热门文章

  1. AVOD——Aggregate View Object Detection代码在centos服务器上运行过程
  2. Zigbee协议栈 OSAL机制
  3. QPainter::begin: Paint device returned engine == 0, type: 2 解决方法,在使用第三方库Qt可视化节点编辑器时
  4. web前端+HTML5+CSS3学习笔记
  5. Solr索引之增删改查
  6. cisco--路由器备份备份恢复
  7. jmeter下载及安装配置
  8. 线性系统理论 matlab,线性系统理论.pdf
  9. [小说]魔王冢(20)解密
  10. 通用方法配置Windows 10 1909 1903 2004等版本下配置多用户同时远程访问