文章目录
一、为什么要了解Python3和Python2的区别
随着时间进入2020年这个节点,Python
官方发表声明不在维护Python2
版本的技术更新,成为了Python
开发领域一个重要拐点。
目前,大部分公司的项目都是以前基于Python2
版本开发,许多项目延续到如今还在使用,至于原因,当然是项目直接迁移升级成Python3
成本过高。
于是出现了一种解决方案,这些继续使用Python2
版本的公司,可以在技术社区通过付费购买维护服务的方式,让专业技术团队,针对性的维护Python2
版本开发的项目。
- 1.公司项目基于
Python2
需要维护 - 2.维护需要专业技术人员
专业技术团队,大家想想,Python是近年越来越火,新生力量,绝大部分都是从Python3
起步开始学习,所以掌握的都是新知识,其实很少人知道具体区别,并且加以运用。
- 3.绝大新生力量仅会
Python3
综上所述,一个开发人员,在掌握Python3
版本开发技术的前提下,熟练使用Python2
也逐渐称为非常重要的一部分
那么,接下来我们来看看Python3
和Python2
版本有哪些区别吧。
二、版本区别使用
1、print
- python2中print为输出语句
- Python3中print是一个函数
Pyhton2
无需括号Python3
需要括号
2、range 与 xrange
- range()在
Python2
中会得到一个列表,xrange(1,3)得到一个生成器 - 在
Python3
中是生成器,没有xrange
3、字符串
Python2
中存储字符串,底层使用ascii编码python3
存储字符串,使用的是Unicode
4、异常处理
python2
中的异常处理语法
Python3
中的异常处理语法
5、打开文件
Python2
有打开方式
- f = file()
- f = open()
Python3
中打开方式
- f = open()
- with()
6、标准输入
python2
有两种标准输入
-
info = raw_input(“提示消息:”),输入数据全部转换为字符串
-
info = input(“提示消息:”),输入什么就输出什么数据类型,输入字符串加引号
Python3
标准输入
- info = input(“提示消息:”) 输入的为字符串类型
7、除法运算
Python2
中
- /表示的是整除,但是加上浮点数就是真实除法
Python3
中
- /表示的就是真实的除法,//表示的整除
8、自定义类型
Python2
- 保留了原始的类型继承关系的经典类,同时也支持继承 object 而衍生的新式 类,所以在多继承操作过程中会出现两种不同的数据检索方式,让中大型项目的开发变得扑 朔迷离。
Python3
- 废弃了经典类,只保留了新式类,也就是现在我们通用的自定义类型,直接 或者间接继承自 object。