10

目前(2013年5月)共有三个发布版本,均在5月15日发布

  • 蟒蛇3.3.2
  • 蟒蛇 3.2.5
  • 蟒蛇2.7.5

我可以理解对 2.x 和 3.x 分支的需求,但为什么会有单独的 3.3.x 和 3.2.x 版本?

4

4 回答 4

10

这个链接中说The current production versions are 2.7.5 and 3.3.2.

如果你看这里,它会说:

Python 3.2.5 于 2013 年 5 月 15 日发布。此版本修复了 Python 3.2.4 中的一些回归,并计划成为最终的 3.2 系列错误修复版本。

所以你应该使用 2.7.5 或 3.3.2,但是如果你需要(我不知道为什么)3.2.* 你有一个错误修复的版本。

于 2013-05-27T10:52:18.830 回答
4

正如 wim 指出的那样,3.2.5 不是当前的生产版本,但我想您想知道为什么在2013 年 5 月 15 日发布了三个版本?这就是为什么仍在维护 3.2.x 分支的原因?

请记住,每个 3.n 步骤都会引入新功能,而 3.nx 版本是对现有版本的修复。因此,3.2.5 是对 3.2.4 的一组错误修复,而 3.3.x 分支包含 3.2.4 中不存在的新功能。因为新功能本质上更有可能引入新的错误,所以维护旧分支可以让您有更高的稳定性选择,例如,如果您只是将网络服务器的新公开版本放在一起并且不想冒着当前分支引入新错误的风险。

于 2013-05-27T10:55:03.937 回答
3

这是python版本控制策略的问题。引用python的维基百科文章

CPython 的公开版本分为三种类型,区别在于版本号的哪一部分递增:

  • 向后不兼容的版本,其中代码预计会中断并且必须手动移植。版本号的第一部分递增。这些版本很少发生——例如,版本 3.0 是在 2.0 之后 8 年发布的。
  • 主要或“功能”版本,它们在很大程度上兼容但引入了新功能。版本号的第二部分递增。这些版本计划大约每 18 个月发布一次,并且每个主要版本在发布后的几年内都受到错误修复的支持。
  • 错误修复版本,不引入新功能但修复错误。版本号的第三部分和最后一部分递增。这些版本是在自上次发布以来上游修复了足够数量的错误时发布的,或者大约每 3 个月发布一次。错误修复版本中也修补了安全漏洞。

所以,3.3 相比 3.2 引入了新的主要功能,这就是为什么它在一个单独的“分支”中。

另见:

于 2013-05-27T10:57:41.833 回答
1

您应该阅读有关版本号的信息。最后一位数字表示简化,没有新功能只有错误修复。因此,使用 Python 3.2 的人可以在不改变 Python 行为的任何情况下安装更新的版本。

于 2013-05-27T11:01:43.233 回答