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处理Excel文件实例代码
Jun 20 Python
Django自定义分页效果
Jun 27 Python
Django1.9 加载通过ImageField上传的图片方法
May 25 Python
python使用pdfminer解析pdf文件的方法示例
Dec 20 Python
我用Python抓取了7000 多本电子书案例详解
Mar 25 Python
Selenium+Python 自动化操控登录界面实例(有简单验证码图片校验)
Jun 28 Python
Python 函数list&amp;read&amp;seek详解
Aug 28 Python
python安装本地whl的实例步骤
Oct 12 Python
Python生成词云的实现代码
Jan 14 Python
python实例化对象的具体方法
Jun 17 Python
一文详述 Python 中的 property 语法
Sep 01 Python
matplotlib阶梯图的实现(step())
Mar 02 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者的疑难问答(2)
2006/10/09 PHP
Apache2 httpd.conf 中文版
2006/11/17 PHP
thinkPHP2.1自定义标签库的导入方法详解
2016/07/20 PHP
jquery子元素过滤选择器使用示例
2013/06/24 Javascript
javascript event在FF和IE的兼容传参心得(绝对好用)
2014/07/10 Javascript
JavaScript常用的返回,自动跳转,刷新,关闭语句汇总
2015/01/13 Javascript
JS获取屏幕高度的简单实现代码
2016/05/24 Javascript
BootStrap中的table实现数据填充与分页应用小结
2016/05/26 Javascript
Nodejs全局安装和本地安装的不同之处
2016/07/04 NodeJs
AngularJs自定义服务之实现签名和加密
2016/08/02 Javascript
JavaScript编写一个简易购物车功能
2016/09/17 Javascript
Javascript中内建函数reduce的应用详解
2016/10/20 Javascript
微信小程序页面开发注意事项整理
2017/05/18 Javascript
浅谈Vue SPA 首屏加载优化实践
2017/12/15 Javascript
一步步教你利用webpack如何搭一个vue脚手架(超详细讲解和注释)
2018/01/08 Javascript
解决vue中使用swiper插件问题及swiper在vue中的用法
2018/04/04 Javascript
webpack配置打包后图片路径出错的解决
2018/04/26 Javascript
JQuery常见节点操作实例分析
2019/05/15 jQuery
[01:40]2014DOTA2国际邀请赛 三冰SOLO赛后采访恶搞
2014/07/09 DOTA
Python中使用socket发送HTTP请求数据接收不完整问题解决方法
2015/02/04 Python
Python捕捉和模拟鼠标事件的方法
2015/06/03 Python
Python中的getopt函数使用详解
2015/07/28 Python
编写Python脚本抓取网络小说来制作自己的阅读器
2015/08/20 Python
利用python写个下载teahour音频的小脚本
2017/05/08 Python
Python3中的列表生成式、生成器与迭代器实例详解
2018/06/11 Python
python虚拟环境完美部署教程
2019/08/06 Python
Python爬虫爬取Bilibili弹幕过程解析
2019/10/10 Python
如何在python中实现随机选择
2019/11/02 Python
python循环输出三角形图案的例子
2019/11/22 Python
Opencv+Python识别PCB板图片的步骤
2021/01/07 Python
CSS3制作炫酷带方向感应的鼠标滑过图片3D动画
2016/03/16 HTML / CSS
怎样建立和理解非常复杂的声明?例如定义一个包含N 个指向返回 指向字符的指针的函数的指针的数组?
2013/03/19 面试题
UNIX操作系统结构由哪几部分组成
2016/02/17 面试题
财务管理专业毕业生求职信范文
2013/09/21 职场文书
计划生育证明格式范本
2014/09/12 职场文书
个人授权委托书范本格式
2014/10/12 职场文书