用python2还是python3

Python07

用python2还是python3,第1张

目前Python的版本有 Python 2 和 Python 3两个版本 。 那如果想学习Python,是选择学习 Python2 还是 Python 3呢?

白月黑羽认为首先你需要了解Python2 和Python3 的区别,然后才能根据你的情况作出正确的选择。

分析

目前Python2 用的最多的是Python2.7,由于历史原因,Python2可以说是使用的时间很长,应用最广泛的一个版本,举两个例子:

如果做底层开发,应该知道UDK、UEFI,UEFI的核心代码的编译工具和脚本都是基于Python2.7开发的

目前所有的Linux版本,包括Ubuntu、redhat、centos、FC等,系统默认工具和安装的Python版本为皆为2(大多数为Python2.7),大家可以在黑屏终端里面直接输入Python 查询

第一个可能只有业内人士知道,但是第二个,只要你从事软件开发的人,就会明白Python2.7的应用范围之广。

由于大量的第三方库和工具都是在Python2上开发的,而且,最早学习Python的人也都是从Python2开始学习了,产品也在Python2 上开发和维护,所以, Python组织还在维护 Python 2。造成了Python 2 和 Python 3 并存的状态, 而且在很长的一段时间将继续存在。但是,Python 组织 官方宣布,到 2020年,不再维护 Python 2 了

至于Python3,它是 Python 2的 升级版,语法和库有一些差异,但不兼容Python 2。从发展趋势上看,整个业界都在 往 Python 3 转,是大势所趋。

选择

那是学习 Python2 还是 Python 3呢?白月黑羽认为:

如果你是一个初学者,白月黑羽建议你可以 直接学习 Python 3,从这里开始和白月黑羽一起学习Python3吧!

如果你是一个Python2 的开发者,白月黑羽也建议先了解Python2和Python3的区别,以便把你的产品早日升级支持Python 3

Python3 目前使用比较广泛的是Python3.6,但最新的是Python3.7,我们的教程的参考版本也是Python3.6,至于是使用 python3.6 而不是 3.7。 具体原因,请参考选择 Python3.6 还是 Python 3.7

推荐学习《python教程》。

从基本设计上来说,Python3的目的就是没有代码兼容的包袱情况下进行改进了Python,相对于Python2来说,Python3有很多的改进,更加容易理解,也更加合理。

从应用的角度上来说,pypy、web框架、科学计算包、scrapy等常用模块都是支持Python3的,但是部分比较陈旧的库已经没有人进行维护,也就没有支持Python3.

当我们进行日常使用的情况之下,可以直接写Python2\3兼容的代码,相对于来说,Python2对于旧库的支持更多一些,至少在学界还是比较流行的。

而Python3对于Python学习来说更加具有好处,也是未来流行的趋势,建议直接学习Python3,未来使用率更为广泛。当然,无论是Python2还是Python3先学都不是问题的,差别并不是很大,主要还是靠自己,只要自己愿意去学习,都可以选择。

1、Python2之前是非常受欢迎的,现在很多软件公司依然使用的是Python2,不过由于越来越多的公司开始从Python2迁移到3,因此初学者可以避免花费更多的时间学习过去的版本了。

2、Python2和Python3之间有一些是无法互相兼容的,现在很多开发人员都在使用Python3开发库,许多老的基于Python2的开发包依然是无法兼容的,想要将Python2库移植到Python3上,对于初学者来说还是比较困难的事情。

3、Python3有更好的Unicode编码支持在Python3的语法之中,默认文化字符串就是Unicode,而Python2默认的存储为ASCII,而且Unicode比ASCII更加通用,可以提供更多的选择。

4、Python3版本改进了整数除法的问题,在Python2中如果你在小数点后面写任何一个数字,计算会自动四舍五入的。而使用Python3的情况下是不需要担心这种情况发生的。

5、两个版本之间有不同的打印语句声明语法,是语法差异,不影响Python的功能。