Python2 与Python3的版本区别实例分析


Posted in Python onMarch 30, 2020

本文实例讲述了Python2 与Python3的版本区别。分享给大家供大家参考,具体如下:

现在还有些开源模块还没有更新到python3 ,不了解版本区别,无法对不合适的地方进行更改。

由于只追求向Python3靠近,所以对于python2的特别用法不探究。

此文不补全所有版本区别,仅作档案记录我遇到的版本区别.


print函数:

在 Python 2 中, print 被视为一个语句而不是一个函数

更改:

Python 2中的print语句==>Python 3中的print()函数

Python2 与Python3的版本区别实例分析

Python2 与Python3的版本区别实例分析


input():

python2的raw_input()更新为Python 3 中的input()


整数除法:

更新:

由py2中的舍去小数的除法==》py3中的计算比较精确的除法

如果py3中想要不保留小数,使用  // 运算符

Python2 与Python3的版本区别实例分析

Python2 与Python3的版本区别实例分析

但要注意小数中//运算符的使用,//是返回比实际的商要小的数。

Python2 与Python3的版本区别实例分析


Unicode编码:

  • 1.Python 2中的字符串基于ASCII
  • 2.Python 3 默认使用 Unicode,Python3中的字符串类型默认是unicode类型的,另外新增了两个字节类:bytes和bytearrays
  • Byte的使用:
    • str对象转换成bytes对象可以使用encode()
    • bytes对象转换成str对象使用decode()
    • Python中对bytes类型的数据带 b前缀的单引号或双引号表示:

Python2 与Python3的版本区别实例分析

  • 由于编码变化还导致了python中网络编程函数使用的变化,网络传输都是字节流的,Python2的网络传输默认是字节型的,而python3中字符串是Unicode的,所以python3要对数据进行编码再传输。

不等运算符

Python 2.x中不等于有两种写法 != 和 <>

Python 3.x中去掉了<>, 只有!=一种写法

现在仍有一些教程保留着<>的用法!


处理异常:

捕获异常的语法由 except exception, variable 改为 except exception as variable

Python2 与Python3的版本区别实例分析

python3中将一些异常细化了,新增了不少异常


抛出异常:

更新:

py3使用构造函数抛出异常

raise 异常名, "自定义的异常信息"
raise 异常名("自定义的异常信息")

Python2 与Python3的版本区别实例分析


生成器的迭代:

python2中支持   生成器.next()

更新为

python3中的next(生成器),生成器.__next__()

Python2 与Python3的版本区别实例分析 

关于Python相关内容感兴趣的读者可查看本站专题:《Python函数使用技巧总结》、《Python面向对象程序设计入门与进阶教程》、《Python数据结构与算法教程》、《Python字符串操作技巧汇总》、《Python编码操作技巧总结》及《Python入门与进阶经典教程》

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

Python 相关文章推荐
python中的hashlib和base64加密模块使用实例
Sep 02 Python
Python基于PycURL自动处理cookie的方法
Jul 25 Python
用yum安装MySQLdb模块的步骤方法
Dec 15 Python
Python上下文管理器和with块详解
Sep 09 Python
对dataframe进行列相加,行相加的实例
Jun 08 Python
numpy.ndarray 交换多维数组(矩阵)的行/列方法
Aug 02 Python
Python3中编码与解码之Unicode与bytes的讲解
Feb 28 Python
使用python制作一个为hex文件增加版本号的脚本实例
Jun 12 Python
python中 * 的用法详解
Jul 10 Python
python字符串分割及字符串的一些常规方法
Jul 24 Python
keras实现theano和tensorflow训练的模型相互转换
Jun 19 Python
Python join()函数原理及使用方法
Nov 14 Python
django xadmin中form_layout添加字段显示方式
Mar 30 #Python
基于virtualenv创建python虚拟环境过程图解
Mar 30 #Python
Python实现RabbitMQ6种消息模型的示例代码
Mar 30 #Python
Anconda环境下Vscode安装Python的方法详解
Mar 29 #Python
配置python的编程环境之Anaconda + VSCode的教程
Mar 29 #Python
Anaconda+VSCode配置tensorflow开发环境的教程详解
Mar 30 #Python
利用django model save方法对未更改的字段依然进行了保存
Mar 28 #Python
You might like
php基于websocket搭建简易聊天室实践
2016/10/24 PHP
浅谈ThinkPHP5.0版本和ThinkPHP3.2版本的区别
2017/06/17 PHP
php 判断IP为有效IP地址的方法
2018/01/28 PHP
PHP执行普通shell命令流程解析
2020/08/24 PHP
JavaScript浏览器选项卡效果
2010/08/25 Javascript
jquery中each方法示例和常用选择器
2014/07/08 Javascript
JavaScript针对网页节点的增删改查用法实例
2015/02/02 Javascript
基于canvas实现的钟摆效果完整实例
2016/01/26 Javascript
基于Echarts 3.19 制作常用的图形(非静态)
2016/05/19 Javascript
window.open打开窗口被拦截的快速解决方法
2016/08/04 Javascript
原生JS实现瀑布流插件
2018/02/06 Javascript
js Array.slice的8种不同用法示例
2019/07/10 Javascript
JS实现商城秒杀倒计时功能(动态设置秒杀时间)
2019/12/12 Javascript
js定时器出现第一次延迟的原因及解决方法
2021/01/04 Javascript
从零学Python之入门(四)运算
2014/05/27 Python
Python程序中使用SQLAlchemy时出现乱码的解决方案
2015/04/24 Python
Python字符串逐字符或逐词反转方法
2015/05/21 Python
分享给Python新手们的几道简单练习题
2017/09/21 Python
Python自然语言处理之词干,词形与最大匹配算法代码详解
2017/11/16 Python
Python编程scoketServer实现多线程同步实例代码
2018/01/29 Python
python实现寻找最长回文子序列的方法
2018/06/02 Python
Scrapy框架爬取西刺代理网免费高匿代理的实现代码
2019/02/22 Python
75条笑死人的知乎神回复,用60行代码就爬完了
2019/05/06 Python
使用python socket分发大文件的实现方法
2019/07/08 Python
pygame实现打字游戏
2021/02/19 Python
python定时截屏实现
2020/11/02 Python
python中if嵌套命令实例讲解
2021/02/25 Python
纯HTML+CSS3制作导航菜单(附源码)
2013/04/24 HTML / CSS
英国最专业的健身器材供应商之一:Best Gym Equipment
2017/12/22 全球购物
Moss Bros官网:英国排名第一的西装店
2020/02/26 全球购物
加拿大大码女装购物网站:Penningtons
2020/12/26 全球购物
创意婚礼策划方案
2014/05/18 职场文书
综治目标管理责任书
2015/05/11 职场文书
自荐信范文
2019/05/20 职场文书
Python NumPy灰度图像的压缩原理讲解
2021/08/04 Python
python神经网络ResNet50模型
2022/05/06 Python