2017-02-15 58 views
3

我想了解不同版本的Python。目前,他们的网站在下载部分提供了几个不同的版本。Python版本编号方案

我明白Python 2.x和3.x之间的区别,我遇到的较大混淆是在不同版本的Python 3.x之间。

例如,他们的网站目前列出的三个最新的版本为:

  • 的Python 3.4.6(2017年1月17日)
  • 的Python 3.5.3(2017-01 -17)
  • 的Python 3.6.0(2016年12月23日)

显然,最新版本是3.4.6,但它不是最大的版本号。

这三个不同版本有什么区别?我应该安装最新版本还是最大版本号?所有的帮助表示赞赏。

+1

请查看http://semver.org/ – lmiguelvargasf

+0

如果您想使用最近更新的版本,您将不断更换版本。如果您的目标是最高版本号,则每次发布新版本时都只能切换版本。同样,如果时间充足,更高的版本号总是会有比最新版本号更新的更新版本号。 – BallpointBen

回答

6

根据this,版本号由

MAJOR.MINOR.PATCH

定义,其中

    当你做出不兼容的API改变
  1. 当您添加次要版本
  2. 主要版本功能以向后兼容的方式执行,并且
  3. 当您制作向后兼容的错误时的PATCH版本修复。

根据thisthis的Python 3.5.0发布于2015年9月13日,而Python 3.4.0已于3月16日公布,2014年

中的版本号的第三个数字是PATCH通常修复错误,所以Python的最后一个版本是3.6.0,目前为止还没有补丁。我建议使用基于您要使用的库的兼容性的版本。

+1

非常感谢!这是一个很好的答案。作为第二个问题,大多数软件包是否明确指出了它们使用的版本号?另外,如果一个软件包中提到“适用于3.4+以上版本”,那么这通常意味着它可以与3.6版本一起使用,还是只能在3.4.x版本中使用? – ncuccia

+0

@ user3317176:如果它显示“3.4+”,即包含3.6。 – user2357112

+0

@ user3317176,它取决于库。例如,在这个页面[Django](https://docs.djangoproject.com/en/1.10/faq/install/)中,它说明哪个版本的软件包与哪个版本的Python兼容,并且如user2357112所示,如果你有3.4+版本,这意味着它将与> = 3.4.0版本兼容。 – lmiguelvargasf