Python 3.8.0b2 版本将于2019-07-29推出
Python 3.8.0b2 发布了,这是 3.8 系列计划中 4 个 beta 版本的第 2 个。Python 3.8仍处于开发阶段。针对 Python 3.8 的中文文档由 OSGeo 中国中心进行翻译处理,也是目前网络上能够找到的完成度最高的 Python 中文文档。文档中的问题也会随着 Python 新版本的开发进行完善。
Python 3.8.0b2 Beta 版本旨在为更广泛的社区提供测试新功能和 bug 修复的机会,并为新功能的发布做准备。
【Python官网3.8.0b2版本下载】
强烈建议第三方 Python 项目的维护者在 beta 阶段使用 3.8 进行测试,并尽快报告 Python 错误跟踪器发现的问题。虽然该版本计划在功能完成后进入测试阶段,但也可能会修改甚至删除功能,直到发布候选阶段(2019-09-30)开始。
官方表示目标是在 beta 3 之后没有 ABI 更改,并且在 3.8.0rc1 之后没有代码更改。
需要注意的是,这是预览版本,不建议在生产环境中使用它。
Python 3.8 的下一个预发行版将是 3.8.0b3,目前计划于 2019-07-29 推出。
分发 Python 模块(遗留版本):【Python 3.8中文文档】https://docs.python.org/zh-cn/3.8/distutils/index.html
作为一个流行的开源开发项目,Python拥有一个活跃的贡献者和用户支持社区,这些社区也可以让他们的软件可供其他Python开发人员在开源许可条款下使用。
这允许Python用户有效地共享和协作,从其他人已经创建的解决方案中受益于常见(有时甚至是罕见的)问题,以及可以提供他们自己的解决方案。
关键术语
Python Packaging Index 是一个开源许可的软件包公共存储库,可供所有 Python 用户使用。
Python Packaging Authority 是负责标准打包工具的维护和发展以及相关元数据和文件格式标准的开发人员和文档作者小组。他们在 GitHub 和 BitBucket 上维护着各种工具,文档和问题跟踪器。
distutils 是1998年首次添加到Python标准库的原始构建和分发系统。虽然直接使用 distutils 正在逐步淘汰,但它仍然为当前的打包和分发基础架构奠定了基础它不仅仍然是标准库的一部分,而且它的名称还以其他方式存在(例如用于协调Python包装标准开发的邮件列表的名称)。
setuptools (在很大程序上)是作为 distutils 的取代者,于 2004 年首次发布。它对未经修改的 distutils 工具最重要的补充是能够声明对其他包的依赖。目前它被推荐用来替代 distutils,其更新更为频繁,在更为多样的 Python 版本之上为最新的包标准提供持续支持。
wheel (在此上下文中)是一个将 bdist_wheel 命令添加到 distutils/setuptools 的项目。这产生了一个跨平台的二进制打包格式(称为“轮子”或“轮子文件”,并在 PEP 427 中定义),它允许在系统上安装Python库,甚至包括二进制扩展的库,而不需在本地进行构建。
安装工具
标准库不包括支持现代Python打包标准的构建工具,因为核心开发团队已经发现,即使在旧版本的Python上,使用一致工作的标准工具也很重要。
可以通过在命令行调用 pip 模块来安装当前推荐的构建和分发工具:
python -m pip install setuptools wheel twine
一个简单的例子:
安装脚本通常非常简单,虽然它是用Python编写的,但是对于你可以用它做什么没有任何限制,尽管你应该小心在你的安装脚本中放置任意昂贵的操作。 与Autoconf样式的配置脚本不同,安装脚本可能在构建和安装模块分发的过程中多次运行。
如果您要做的只是分发一个名为foo的模块,包含在文件foo.py中,那么您的安装脚本可以像这样简单:
from distutils.core import setup setup(name='foo', version='1.0', py_modules=['foo'], )
提供给Distutils的大多数信息都作为setup()函数的关键字参数提供
这些关键字参数分为两类:包元数据(名称,版本号)和有关包中的内容的信息(在这种情况下是纯Python模块的列表)
模块由模块名称指定,而不是文件名(对于包和扩展名也是如此)
建议您提供更多元数据,特别是您的名称,电子邮件地址和项目的URL(请参阅编写安装脚本一节中的示例)
要为此模块创建源代码分发,您将创建一个包含上述代码的安装脚本setup.py,并从终端运行此命令:
python setup.py sdist
对于Windows,打开命令提示符窗口(开始‣附件)并将命令更改为:
setup.py sdist
sdist将创建一个存档文件(例如,Unix上的tarball,Windows上的ZIP文件),其中包含您的安装脚本setup.py和您的模块foo.py. 存档文件将命名为foo-1.0.tar.gz(或.zip),并将解压缩到foo-1.0目录中。
如果最终用户希望安装你的foo模块,他们所要做的就是下载foo-1.0.tar.gz(或.zip),解压缩它,以及—从foo-1.0目录—运行
python setup.py install
最终将foo.py复制到Python安装中第三方模块的相应目录中。
这个简单的例子演示了Distutils的一些基本概念。 首先,开发人员和安装人员都具有相同的基本用户界面,即设置脚本。 不同之处在于它们使用的Distutils命令:sdist命令几乎专门用于模块开发人员,而安装更常用于安装程序(尽管大多数开发人员都希望偶尔安装自己的代码)。
如果您希望为用户提供简单易用的功能,则可以为他们创建一个或多个构建的分发版。 例如,如果您在Windows计算机上运行,并且希望为其他Windows用户提供便利,则可以使用bdist_wininst命令创建可执行安装程序(此平台的最合适的内置分发类型)。 例如:
python setup.py bdist_wininst
将在当前目录中创建一个可执行安装程序foo-1.0.win32.exe。
其他有用的构建分发格式是RPM,由bdist_rpm命令,Solaris pkgtool(bdist_pkgtool)和HP-UX swinstall(bdist_sdux)实现。 例如,以下命令将创建一个名为foo-1.0.noarch.rpm的RPM文件:
python setup.py bdist_rpm
(bdist_rpm命令使用rpm可执行文件,因此必须在基于RPM的系统上运行,例如Red Hat Linux,SuSE Linux或Mandrake Linux。)
您可以通过运行随时查找可用的分发格式
python setup.py bdist --help-formats
来源:PY学习网:原文地址:https://www.py.cn/article.html