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给文本创立向量空间模型的教程
Apr 23 Python
Pycharm编辑器技巧之自动导入模块详解
Jul 18 Python
Python实现运行其他程序的四种方式实例分析
Aug 17 Python
python编写弹球游戏的实现代码
Mar 12 Python
numpy数组之存取文件的实现示例
May 24 Python
python中的句柄操作的方法示例
Jun 20 Python
Python何时应该使用Lambda函数
Jul 02 Python
python增加图像对比度的方法
Jul 12 Python
Keras实现将两个模型连接到一起
May 23 Python
python3 简单实现组合设计模式
Jul 02 Python
OpenCV读取与写入图片的实现
Oct 13 Python
python 提高开发效率的5个小技巧
Oct 19 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
ajax完美实现两个网页 分页功能的实例代码
2013/04/16 PHP
PHP大转盘中奖概率算法实例
2014/10/21 PHP
php实现学生管理系统
2020/03/21 PHP
Laravel 手动开关 Eloquent 修改器的操作方法
2019/12/30 PHP
JQuery 选择和过滤方法代码总结
2010/11/19 Javascript
在jquery中处理带有命名空间的XML数据
2011/06/13 Javascript
JS中setInterval、setTimeout不能传递带参数的函数的解决方案
2013/04/28 Javascript
javascript跟随滚动效果插件代码(javascript Follow Plugin)
2013/08/03 Javascript
nodejs读取memcache示例分享
2014/01/02 NodeJs
如何将php数组或者对象传递给javascript
2014/03/20 Javascript
node.js使用require()函数加载模块
2014/11/26 Javascript
jquery动感漂浮导航菜单代码分享
2020/04/15 Javascript
Express与NodeJs创建服务器的两种方法
2017/02/06 NodeJs
JS实现关键词高亮显示正则匹配
2018/06/22 Javascript
微信小程序之批量上传并压缩图片的实例代码
2018/07/05 Javascript
如何自动化部署项目?折腾服务器之旅~
2019/04/16 Javascript
JavaScript实现随机点名器
2020/03/25 Javascript
vue router-link 默认a标签去除下划线的实现
2020/11/06 Javascript
在Vue中使用CSS3实现内容无缝滚动的示例代码
2020/11/27 Vue.js
[50:27]Secret vs VG 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
[01:01:36]Optic vs paiN 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
pandas.loc 选取指定列进行操作的实例
2018/05/18 Python
详解Python爬取并下载《电影天堂》3千多部电影
2019/04/26 Python
pytorch 加载(.pth)格式的模型实例
2019/08/20 Python
Keras 在fit_generator训练方式中加入图像random_crop操作
2020/07/03 Python
Python 在局部变量域中执行代码
2020/08/07 Python
Python实现七个基本算法的实例代码
2020/10/08 Python
python爬取天气数据的实例详解
2020/11/20 Python
HTML5 和小程序实现拍照图片旋转、压缩和上传功能
2018/10/08 HTML / CSS
html5用video标签流式加载的实现
2020/05/20 HTML / CSS
移动端HTML5开发神器之vconsole详解
2020/12/15 HTML / CSS
台湾母婴用品限时团购:妈咪爱
2018/08/03 全球购物
2015元旦家电促销活动策划方案
2014/12/09 职场文书
大学生党员自我评价
2015/03/04 职场文书
民事申诉状范本
2015/05/20 职场文书
python处理json数据文件
2022/04/11 Python