【问题标题】:Difference between web-based and executable installers for Python 3 on WindowsWindows 上 Python 3 的基于 Web 的安装程序和可执行安装程序之间的区别
【发布时间】:2016-07-29 06:12:34
【问题描述】:

Windows 版 Python 的downloads page 提供了一个“基于网络” 安装程序和一个“可执行” 安装程序。有什么区别?

【问题讨论】:

标签: python windows python-3.x


【解决方案1】:

这适用于所有程序,而不仅仅是 Python:

可执行安装程序在安装程序本身中包含您在本地安装的程序的每个组件。这意味着您可以在可以访问 Internet 的计算机上下载安装程序,将其复制到没有 Internet 访问权限的计算机上并在那里安装。如果您要安装网卡驱动程序,这很有用。

基于 Web 的安装程序是小程序,当您启动它们时,下载必要的文件并直接安装它们。这意味着安装程序非常小。

如果你只是想在本地计算机上安装 python 并且可以访问网络,那么选择哪一个并不重要。

Installer size comparison

【讨论】:

  • 您声称这适用于所有程序,但我认为这不是真的。谷歌搜索“可执行安装程序”只会给我 Python 结果。这似乎是 Python 弥补的一个区别,如 Eddy Current claims
  • @MarkAmery 并没有我想象的那么普遍,不过这里再举一个例子:debian.org/distrib/index.en.html这里叫小安装图和完整安装图,但基本是一回事。跨度>
【解决方案2】:

Python 做出的区分完全是人为的:它们的可执行文件和基于 Web 的安装程序都是可执行的安装程序。 一个供离线使用(包含所有组件),另一个供在线使用(在执行期间下载这些组件)。后者可能会下载并安装当前版本,而前者将安装您下载可执行安装程序时可用的版本。 一般来说,您应该远离可执行安装程序:这些几乎总是易受攻击的。 首选操作系统的包安装程序包!

【讨论】:

  • 不幸的是,关于 Windows,“首选软件包安装程序”意味着可能无限期地等待适合操作系统的体面软件包系统,它不是 nuget/chocolatey,不需要购买额外(关键)功能并且是从一开始就与操作系统正确集成。
【解决方案3】:

官方文档的解释范围是这一点包含在自Python 3.5.0以来的所有发行说明中:

Windows 用户:现在有适用于 Windows 平台的“基于 Web”的安装程序;安装程序将在安装时下载所需的软件组件。

作为Python contributor Steve Dower notes,主要的折衷方案是可执行安装程序将离线工作,而基于 Web 的安装程序将占用更少的带宽(因为它可以避免下载不需要的组件,这些组件需要捆绑到可执行安装程序以防万一)。然而,鉴于可执行安装程序只有 30MB 左右,而根据 Steve 的说法,总节省量通常约为 3-5MB,在我看来,这对任何人都无关紧要。即使在0.34 Mbps internet in Yemen 上,使用基于Web 的安装程序也只会为您节省几分钟。 (对伦敦的我来说,下载可执行安装程序大约需要 2 秒。)

因此,请使用您喜欢的两个安装程序中的任何一个,除非您打算将安装程序复制到无法访问 Internet 的机器上并在那里运行,在这种情况下,您应该使用可执行安装程序。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-12-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-01
    相关资源
    最近更新 更多