代码总结Python2 和 Python3 字符串的区别


Posted in Python onJanuary 28, 2020

Python2

>>> 
>>> isinstance(b'abc', bytes)
True
>>> 
>>> isinstance(b'abc', str)
True
>>> 
>>> isinstance('abc', str)
True
>>> 
>>> isinstance('abc', bytes)
True
>>> 
>>> 
>>> 
>>> 'abc'.startswith('ab')
True
>>> 
>>> b'abc'.startswith('ab'.encode())
True
>>> 
>>> b'abc'.startswith('ab')
True
>>> 
>>> 'abc'.startswith('ab'.encode())
True
>>>

Python3

>>> 
>>> isinstance(b'abc', bytes)
True
>>> 
>>> isinstance(b'abc', str)
False
>>> 
>>> isinstance('abc', str)
True
>>> 
>>> isinstance('abc', bytes)
False
>>> 
>>> 
>>> 
>>> 'abc'.startswith('ab')
True
>>> 
>>> b'abc'.startswith('ab'.encode())
True
>>> 
>>> b'abc'.startswith('ab')
Traceback (most recent call last):
 File "<pyshell#25>", line 1, in <module>
  b'abc'.startswith('ab')
TypeError: startswith first arg must be bytes or a tuple of bytes, not str
>>> 
>>> 'abc'.startswith('ab'.encode())
Traceback (most recent call last):
 File "<pyshell#27>", line 1, in <module>
  'abc'.startswith('ab'.encode())
TypeError: startswith first arg must be str or a tuple of str, not bytes
>>>

扩展学习

python2中有一种类型叫做unicode型,例

type(u"a") => str型
type("a".decode('utf8')) => unicode型

两者返回的类型都是unicode型

而在python3中,所有的字符串都是unicode,所以就不存在单独的unicode型,全部都是字符串型

type(u"a") => str型
type("a".decode('utf8')) => 报错,python3不能这样写

但是python3中多处一种字符串

type(b'132') => byte型

以上就是相关的知识点内容,如果大家有任何补充可以联系三水点靠木小编。

Python 相关文章推荐
python元组操作实例解析
Sep 23 Python
import的本质解析
Oct 30 Python
python安装教程
Feb 28 Python
Django Form 实时从数据库中获取数据的操作方法
Jul 25 Python
elasticsearch python 查询的两种方法
Aug 04 Python
Python+OpenCV 实现图片无损旋转90°且无黑边
Dec 12 Python
python tkinter之顶层菜单、弹出菜单实例
Mar 04 Python
Django 实现将图片转为Base64,然后使用json传输
Mar 27 Python
Python中如何引入第三方模块
May 27 Python
python打开文件的方式有哪些
Jun 29 Python
8种常用的Python工具
Aug 05 Python
python字符串拼接.join()和拆分.split()详解
Nov 23 Python
使用Python爬虫库BeautifulSoup遍历文档树并对标签进行操作详解
Jan 25 #Python
Python爬虫库BeautifulSoup获取对象(标签)名,属性,内容,注释
Jan 25 #Python
Python爬虫库BeautifulSoup的介绍与简单使用实例
Jan 25 #Python
使用Python爬虫库requests发送表单数据和JSON数据
Jan 25 #Python
Python爬虫库requests获取响应内容、响应状态码、响应头
Jan 25 #Python
使用Python爬虫库requests发送请求、传递URL参数、定制headers
Jan 25 #Python
flask框架自定义url转换器操作详解
Jan 25 #Python
You might like
PHP实现CSV文件的导入和导出类
2015/03/24 PHP
MacOS 安装 PHP的图片裁剪扩展Tclip
2015/03/25 PHP
php5.5使用PHPMailer-5.2发送邮件的完整步骤
2018/10/14 PHP
详解将数据从Laravel传送到vue的四种方式
2019/10/16 PHP
JavaScript 对象成员的可见性说明
2009/10/16 Javascript
jquery 结合C#后台的数组对文章的关键字自动添加链接的代码
2011/07/15 Javascript
js Calender控件使用详解
2015/01/05 Javascript
简单谈谈Javascript中类型的判断
2015/10/19 Javascript
详解JS面向对象编程
2016/01/24 Javascript
vue实现裁切图片同时实现放大、缩小、旋转功能
2018/03/02 Javascript
Vue引用Swiper4插件无法重写分页器样式的解决方法
2018/09/27 Javascript
深入探讨JavaScript的最基本部分之执行上下文
2019/02/12 Javascript
echarts大屏字体自适应的方法步骤
2019/07/12 Javascript
Vue的data、computed、watch源码浅谈
2020/04/04 Javascript
微信小程序开发(三):返回上一级页面并刷新操作示例【页面栈】
2020/06/01 Javascript
Python实现文件复制删除
2016/04/19 Python
Python实现冒泡排序的简单应用示例
2017/12/11 Python
python3大文件解压和基本操作
2017/12/15 Python
python os.listdir按文件存取时间顺序列出目录的实例
2018/10/21 Python
Python3.5以上版本lxml导入etree报错的解决方案
2019/06/26 Python
Python3实现二叉树的最大深度
2019/09/30 Python
python打开使用的方法
2019/09/30 Python
Python3读取和写入excel表格数据的示例代码
2020/06/09 Python
html5中去掉input type date默认样式的方法
2018/09/06 HTML / CSS
升职自荐信
2013/11/28 职场文书
《找不到快乐的波斯猫》教学反思
2014/02/24 职场文书
安全承诺书范文
2014/03/26 职场文书
群众路线党课主持词
2014/04/01 职场文书
社区党员干部承诺书
2015/05/04 职场文书
荒岛余生观后感
2015/06/09 职场文书
导游词之澳门妈祖庙
2019/12/19 职场文书
解决Vue+SpringBoot+Shiro跨域问题
2021/06/09 Vue.js
浅谈mysql增加索引不生效的几种情况
2021/06/23 MySQL
go goroutine 怎样进行错误处理
2021/07/16 Golang
MySQL基础快速入门知识总结(附思维导图)
2021/09/25 MySQL
python前后端自定义分页器
2022/04/13 Python