python2和python3的编码问题
python2中有两种类型
str字符串和unicode字符串
python3则改成了
bytes和str字符串
在python2中‘xxx’和b‘xxx’都是str字符串,u‘xxx’是unicode字符串,即python3中的bytes在python2是不存在的,都归属于str字符串
在python3中unicode是不存在的,被归并到str字符串里面的,即‘xxx’和u‘xxx’都是str字符串,b‘xxx’是bytes
主要的原因是python2的默认编码是asscii码,而python3的默认编码是utf-8
utf-8相较于asscii能容纳更多的字符,举个例子,utf-8能正常显示中文,而asscii则不行。具体有什么差异就不详细说了。
所以在python2中如果要显示中文需要做编码处理
编码处理的一般方式是
str通过decode函数编码成unicode,然后通过encode编码成str
而python3中可以正常显示中文,不做编码处理也不会有什么大问题
随便说一下python2中str有encode和decode两个函数,encode用来将unicode编码成指定的编码,decode用来将指定编码编码成unicode
encode其实是将字符串变成bytes,因为python2没有bytes所以其还是str字符串。
python3中将bytes和str拆开了,str就只有encode函数可以使用了,使用encode变成bytes之后,bytes类型可以使用decode函数
python2和python3的编码问题的更多相关文章
- day008 字符编码之 字符编码 、Python2和Python3字符编码的区别
计算机基础(掌握) 启动应用程序的流程 双击qq 操作系统接受指令然后把该操作转化为0和1发送给CPU CPU接受指令然后把指令发送给内存 内存接受指令把指令发送给硬盘获取数据 qq在内存中运行 文本 ...
- 字符编码 + python2和python3的编码区别(day08整理)
目录 昨日回顾 二十三.元组内置方法 二十四.散列表 二十五.字典内置方法 二十六.集合内置方法 二十七.深浅拷贝 拷贝 浅拷贝 深拷贝 今日内容 二十八.字符编码 1.文本编辑器存储信息的过程 2. ...
- Python2 与 Python3 的编码对比
在 Python 中,不论是 Python2 还是 Python3 中,总体上说,字符都只有两大类: 通用的 Unicode 字符: (unicode 被编码后的)某种编码类型的字符,比如 UTF-8 ...
- Python2与Python3字符编码的区别
目录 字符编码应用之Python(掌握) 执行Python程序的三个阶段 Python2与Python3字符串类型的区别(了解) Python2 str类型 Unicode类型 Python3 字符编 ...
- python2和python3的编码encode解码decode函数
python比较坑的一个点:意义完全变了的两个函数 首先 常用的编码方式有3种,utf-8: 常用的传输和存储格式,Unicode的一种简化 Unicode:包括了所有可能字符的国际统一编码 GBK ...
- 转 python2 与 python3 的编码
原文链接:https://blog.csdn.net/xufive/article/details/102726739 引文如下: 无论是py2还是py3,都使用unicode作为内存编码,简称内码. ...
- python2与python3 字符问题以及 字符编码 内容总结
python2与python3默认编码: python2:gbk print( u'上' ) 操作系统也是 gbk python3:unicode p ...
- 字符编码、python2和python3编码的区别
目录 字符编码 文本编辑器存储信息的过程 python解释器解释python代码的流程 python解释器与文本编辑器的异同 不同编码格式存入与读取数据的过程 乱码的分析 python2和python ...
- Python2和Python3中的字符串编码问题解决
Python2和Python3在字符串编码上是有明显的区别. 在Python2中,字符串无法完全地支持国际字符集和Unicode编码.为了解决这种限制,Python2对Unicode数据使用了单独的字 ...
随机推荐
- poj 1182 (扩展并查集)
食物链 Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 58979 Accepted: 17247 Description ...
- ibatis中的符号#跟$区别
昨天一个项目中在写ibatis中的sql语句时,order by #field#, 运行时总是报错,后来上网查了查,才知道这里不该用#,而应该用$,随即查了下#与$的区别. 总结如下: 1.#是把 ...
- Python实例 | 贴吧签到
第一步 查看HTTP请求的内容 首先需要通过浏览器或者其他http包分析软件来观察,签到的时候进行了什么请求. Firefox浏览器就足以做到这一点,Wireshark是更加专业的包分析软件,它除了能 ...
- sonarQube安装及本机扫描C#项目
因项目需要,需要使用sonarQube对代码进行扫描并查看,因对sonarQube不熟悉,所以先在本机搭建测试环境. 参考了张老师的博客:http://www.cnblogs.com/danzhang ...
- Ionic-wechat项目边开发边学(二):目录结构,header标签与路由
之前一直跟Linux驱动打交道,上层应用几乎为零,业余时间也不是很多,所以博客也不会写的非常详细,大家有问题尽管评论哦, 我有空会及时回复! 摘要 上一篇文章主要介绍了ionic的开发环境配置, 以及 ...
- 转:Filter的执行顺序与实例
转:http://www.cnblogs.com/Fskjb/archive/2010/03/27/1698448.html Filter的执行顺序与实例 Filter介绍 Filter可认为是Ser ...
- gradle打包分编译环境
gradle打包分测试.开发.生产环境 buildTypes { debug { signingConfig signingConfigs.myConfig buildConfigField(&quo ...
- HDU 3339 In Action【最短路+01背包模板/主要是建模看谁是容量、价值】
Since 1945, when the first nuclear bomb was exploded by the Manhattan Project team in the US, the n ...
- Eclipse generate javadoc
注:若遇到导出文档乱码,则点击上图的[next]按钮,在vm options的输入框输入 -J-Xmx180m —- 设置内存大小 (若遇到内存溢出时) -encoding utf-8 ...
- DelegatingFilterProxy干了什么?
org.springframework.web.filter.DelegatingFilterProxy 一般情况,创建一个Filter是交给自己来实现的.基于servlet规范,在web.xml中配 ...