PEP 206 – Python 高级库
- 作者:
- A.M. Kuchling <amk at amk.ca>
- 状态:
- 已撤回
- 类型:
- 信息性
- 创建时间:
- 2000-07-14
- 发布历史:
介绍
此 PEP 描述了 Python 高级库,它是高质量且常用的第三方扩展模块的集合。
内置电池理念
Python 源代码分发一直秉持“内置电池”的理念 - 提供丰富的标准库,无需用户下载单独的包即可立即使用。这使 Python 语言在许多项目中都占得先机。
然而,标准库模块并不总是完成工作的最佳选择。有些库模块只是简单的快速实现(例如 calendar
,commands
),有些设计不佳,现在几乎不可能修复 (cgi
),而另一些则被其他更完整的模块取代了 (binascii
提供了与 binhex
,uu
,base64
模块相同的特性)。此 PEP 描述了使 Python 在各个应用领域更具竞争力的第三方模块列表,形成了 Python 高级库。
最终交付的是一组脚本,这些脚本将检索、构建和安装特定应用领域的软件包。Python 包索引现在包含足够的信息,可以让软件自动查找包并下载它们,因此现在是实施此功能的最佳时机。
目前,本文件不建议移除标准库中被第三方模块取代的模块。这样做很困难,因为会带来很多向后兼容性问题,所以现在还不值得为此烦恼。
请建议其他感兴趣的领域。
领域:Web 任务
XML 解析:ElementTree + SAX。
URL 获取:libcurl?其他可能性?
HTML 解析:mxTidy?HTMLParser?
异步网络 I/O:Twisted
RDF 解析器:???
HTTP 服务器:???
HTTP Cookie 处理:???
Web 框架:WSGI 网关,也许?Paste?
图形:PIL,Chaco。
领域:科学编程
数值:Numeric,SciPy
图形:PIL,Chaco。
领域:应用开发
GUI 工具包:???
图形:Reportlab 用于 PDF 生成。
领域:教育
图形:PyGame
受 GNU 通用公共许可证保护的软件
这些第三方模块中的一部分受 GNU 通用公共许可证和 GNU 小通用公共许可证的保护。提供下载和安装这些软件包的脚本,甚至将所有这些软件包汇集到一个单独的压缩包或 CD-ROM 中,根据许可证的“仅仅聚合”条款,不应会造成任何 GPL 方面的困难。
开放问题
还有哪些应用领域很重要?
这是否应该只是一组 Ubuntu 或 Debian 软件包?编译 PyGame 之类的软件可能非常复杂,并且可能难以自动化。
致谢
此 PEP 基于 Moshe Zadka 之前起草的 PEP,标题为“2.0 内置电池”。
来源:https://github.com/python/peps/blob/main/peps/pep-0206.rst
最后修改时间:2024-04-14 13:35:25 GMT