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 功能和特点(新手必学)
Dec 30 Python
Windows下Eclipse+PyDev配置Python+PyQt4开发环境
May 17 Python
Python简单实现安全开关文件的两种方式
Sep 19 Python
python中利用xml.dom模块解析xml的方法教程
May 24 Python
Python读取excel中的图片完美解决方法
Jul 27 Python
利用python计算时间差(返回天数)
Sep 07 Python
python实现输入任意一个大写字母生成金字塔的示例
Oct 27 Python
浅谈Keras的Sequential与PyTorch的Sequential的区别
Jun 17 Python
Python的控制结构之For、While、If循环问题
Jun 30 Python
Python Opencv实现单目标检测的示例代码
Sep 08 Python
python实现b站直播自动发送弹幕功能
Feb 20 Python
python反编译教程之2048小游戏实例
Mar 03 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
淘宝ip地址查询类分享(利用淘宝ip库)
2014/01/07 PHP
PHP中的一些常用函数收集
2015/05/26 PHP
PHP GD库相关图像生成和处理函数小结
2016/09/30 PHP
PHP ADODB实现分页功能简单示例
2018/05/25 PHP
CSS(js)限制页面显示的文本字符长度
2012/12/27 Javascript
JQuery操作iframe父页面与子页面的元素与方法(实例讲解)
2013/11/20 Javascript
JavaScript如何实现对数字保留两位小数一位自动补零
2015/12/18 Javascript
js接收并转化Java中的数组对象的方法
2016/08/11 Javascript
AngularJS中指令的四种基本形式实例分析
2016/11/22 Javascript
vue2笔记 — vue-router路由懒加载的实现
2017/03/03 Javascript
javascript中this用法实例详解
2017/04/06 Javascript
JS点击缩略图整屏居中放大图片效果
2017/07/04 Javascript
angular指令笔记ng-options的使用方法
2017/09/18 Javascript
JS计算输出100元钱买100只鸡问题的解决方法
2018/01/04 Javascript
移动端滑动切换组件封装 vue-swiper-router实例详解
2018/11/25 Javascript
使用Vue CLI创建typescript项目的方法
2019/08/09 Javascript
解决layer弹出层msg的文字不显示的问题
2019/09/11 Javascript
[02:10]探秘浦东源深体育馆 DOTA2 Supermajor不见不散
2018/05/17 DOTA
[39:19]完美世界DOTA2联赛PWL S2 SZ vs LBZS 第二场 11.26
2020/11/30 DOTA
python3+PyQt5实现文档打印功能
2018/04/24 Python
基于python进行抽样分布描述及实践详解
2019/09/02 Python
Python拼接字符串的7种方式详解
2020/03/19 Python
解决pyecharts运行后产生的html文件用浏览器打开空白
2020/03/11 Python
浅谈python 调用open()打开文件时路径出错的原因
2020/06/05 Python
基于python调用jenkins-cli实现快速发布
2020/08/14 Python
在Python中字典按值排序的实现方法
2020/11/12 Python
H5 canvas中width、height和style的宽高区别详解
2018/11/02 HTML / CSS
通过Canvas及File API缩放并上传图片完整示例
2013/08/08 HTML / CSS
世界上最全面的汽车零部件和配件集合:JC Whitney
2016/09/04 全球购物
李维斯牛仔裤荷兰官方网站:Levi’s NL
2020/08/23 全球购物
Java里面Pass by value和Pass by Reference是什么意思
2016/05/02 面试题
建筑班组长岗位职责
2014/01/02 职场文书
学习2014年全国两会心得体会
2014/03/12 职场文书
小学运动会通讯稿
2015/07/18 职场文书
春节慰问简报
2015/07/21 职场文书
Python办公自动化解决world文件批量转换
2021/09/15 Python