2010-09-27 144 views
5

Python标准库标准的含义是,如果安装了Python,那么标准库也已安装?Python标准库真的是标准吗?

documentation读取

对于类似Unix的操作系统Python是作为包的集合通常设置,所以它可能有必要使用提供与操作系统打包工具来获得的一些或全部可选组件。

标准库index只列出可选的“可选操作系统服务”,据我所知。

因此,如果安装了Python,那么其他所有东西都可以在平台上使用吗?如果没有,最常见的(Windows,Mac OS X,Linux)可以预期的是什么? PS:我正在教一个Python课程给研究生,我希望能够告诉他们Python总是带有电池,这对他们来说是非常重要的(当他们到达一个新的实验室或使用一台新机器时,他们知道在标准模块可用性方面会发生什么)。

+0

你检查了几个安装程序,看看你有什么?你在教什么?你看了什么? – 2010-09-28 03:09:41

+0

@ S.Lott:我想让学生知道他们*在到达新的(实验室)环境时能够期待什么,并且必须使用任何计算机。这对他们来说是有用的,实用的信息。 (我确实照顾学生在他们使用的机器上安装学生需要的所有东西。) – EOL 2010-09-28 07:38:40

回答

7

这不是Python问题。你可以教导包含电池。他们是。

这是分布不完整。

我们对拥有老版本Python的红帽企业Linux不满意。但是,有升级食谱。

关闭所有开发者包是一种常见的安全做法,使Python不完整。这是Python以外的常见情况,也是基本Linux发行版之外的情况。

电池正常情况下包括在内。但是,剥去部分或全部电池也很容易。许多组织会因各种原因而创建不完整的库。

这不是Python。这是不完整的环境。

+0

+1:好点。我猜想士气是你有时必须去商店买Python电池;但好处是他们总是有库存。 :) – EOL 2010-09-28 07:34:08

2

这取决于分销包装商。例如在Debian上,配置文件模块profilecprofile分别安装为python-profiler。其他模块也可以在不同的版本上分开。

5

通常是的 - 在可选部分中未列出的所有东西都将始终可用。

这些都是可以变化的,从操作系统到操作系统安装的东西: http://docs.python.org/library/someos.html

你,除非你正在做的相当先进的规划很可能不会使用这些。

+2

这在Unix安装上并不是真的。例如,在FreeBSD上安装lang/python27端口不会让你获得bsddb,gdbm,sqlite3或tkinter模块。这些依赖于其他未默认安装的软件包。 – 2010-09-28 01:37:20

+0

@ Just Some Guy - 谢谢你补充一点。为了完整性,是一个有什么外部依赖性或仅仅是几个例子的全面列表? – dkamins 2010-09-28 04:16:31

+1

我认为这对于FreeBSD是全面的 - 它基于安装Python之后向用户显示的消息。 Ubuntu也有“python”和“python-minimal”包,其中“minimal”跳过了与FreeBSD相同的东西。我不确定哪些(如果其中的一个)默认安装。 – 2010-09-28 13:33:47