python 3还学是2

  

python 3还学是2 ?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

在过去几年,在编程社区里有大量关于到底哪一个python版本才是最值得去学的讨论:是python2还是python3(特别是python2.7与python3.5)。进入2019年,很显然python3已经是赢家,深受大量初学者的欢迎。在这里小编带你看看python2与python3之间的一些主要诧异?

<强> python2和python3的发展历史

先从一个简短的python发布时间轴开始:

<强>· 2000年Python2.0发布

<强>· 2008年Python3.0发布

<强>· 2010年python2.7发布

<强>· 2019年3月4日Python2.7.15(最新版本)

<强>· 2019年3月25日Python3.7.3(最新版本)

<强>·强尽管python2.7仍然广泛使用,但是python3的应用正在迅速增长。在2016年有71.9%的项目使用python2.7,但是到了2017年它降到63.7%。这表明编程社区正在转向python3。

<强>·强值得注意的是,python2将在2020年元旦正式停止官方支持。

<强>·从过去的2018年更新频率看,python3发布了从3.5.5到3.7.2章近10个版本,而python2只更新了2.7.15一个版本。

<强> python2和python3主要差异

在编程风格上python2和python3有大量差异,这里列举五个重要方面说明:

(1) python2是过去,python3是未来由于在过去10几年时间里python2是最受欢迎的版本,所以在大部分软件公司中仍然大量存在。但是由于越来越多公司开始从python2迁移到3,因此初学者可能希望避免花时间在一个已经过时的版本上。

(2) python2和python3有一些互相不兼容的库由于python3代表未来,如今很多开发人员严格用python3开发一些库,许多老的基于python2的老开发包是不向前兼容的。你可以将2. x库移植到3。x,但这对于初学者来说可能是比较困难和复杂的。

(3) Python3有更好的Unicode编码支持在Python3语法中,默认情况下文本字符串是Unicode,在Python2中,字符串默认存储为ASCII,如果要在Python2。X中将字符串存储为Unicode,则必须加“u"。

str =,“中国“,#,python3写法   str =, u"中国“,#,python2写法

这一个变化十分重要,因为Unicode比ASCII更加通用,Unicode字符串可以存储外语字母,罗马数字和数字,符号和标签符号等,可以为你提供更多的选择。

(4) Python3改进了整数除法在python2中,如果你在小数点后面写一个没有任何数的数字,它会将你的计算向下舍入到最接近的整数。例如,如果你要计算5除以2,深入5/2,则由于四舍五入,结果将为2,你必须把他写成5.0/2.0才能得到预期2.5的答案。但是,在Python3中,表达式5/2得到2.5的预期结果,不必要担心四舍五入的问题。

打印(5/2),#,输出2,python2   打印(5.0/2.0),#,输出2.5,Python2   打印(5/2),#,输出2.5,Python3   打印(5.0/2.0),#,输出2.5,Python3

(5)两个版本有不同的打印语句声明语法这只是一种语法差异,有些人可能认为它很简单,所以不会影响Python的功能,也就是说,你应该知道它仍然是一个巨大明显的差异。本质上说,Python3中,打印语句已经被打印()替代。如果你第一次编程这对你影响不大,如果你之前一直是Python2,这可能在一段时间里会很不习惯。

print “hello  world", #, Python2打印方法   打印(“hello  world"), #, Python3打印方法

<强>为什么很多公司向Python3迁移

正如前面讲的,由于遗留原因,大多数公司仍在使用Python2,但是越来越多的公司正在使用Python3,或者开始从2到3进行切换。接下来从Instagram为什么Python2从迁移到3来说明。

每个较新版本的Python都在持续优化来获得更快的运行时间。但是,没有人正在努力使Python2.7更快地运行。

<强>作为一个初学者,我该如何选择

这其实是一个很简单的问题,学习最新的版本就可以(3.7),Python3中的一些改进实际上使初学者更容易理解,因此这是初学者学习Python的最佳方式。请记住,2020年之后将不再支持Python2.7,因此在这一点上专心致力于学习它对大多数人来说都没有意义。

<强>什么时候学习Python2有意义?

以下是你可能需要了解Python2的一些情况:

如果你想成为DevOps工程师并使用织物或Ansible等配置管理工具,你可能必须同时使用Python2和3(因为这些库的某些部分没有完整的Python3支持)。

如果您的公司拥有用Python 2编写的遗留代码,那么你需要学会使用它。

python 3还学是2