为了做出贡献,你需要建立一个开发环境 - 一个你可以在其中编写代码,并使代码和在其他人的环境中时表现一样的地方。

BeeWare 的许多部分都使用相同的工具:特定版本的 Python,和虚拟环境控件。

Python

Python 是一种脚本语言,可用于多种不同的操作系统上使用。不过,根据您使用的系统不同,Python 的版本也会不同。因此,我们要明确说明代码将在哪个版本的 Python 上运行。

在下面的说明中,我们假设您知道您需要安装的 Python 版本。通常,这在 README.md 文件或教程信息中列出。我们的 CI 系统也必须被告知需要的 Python 版本。所以如果您真的卡住了,尝试查看 .github/workflows/ci.yml 文件,查找您需要的特定版本。

要为 BeeWare 做出贡献,您需要在机器上安装 Python 解释器。在 macOS 和 Windows 上,我们建议使用 Python.org 上的官方安装程序;在 Linux 上,我们建议使用您的发行版包管理器提供的 Python 版本。

虚拟环境

安装 Python 时,它会提供一个单一的全局环境。默认情况下,如果安装软件包,它将被安装到这个全局环境中。

但是,如果您正在开发多个 Python 项目,那么这些项目很可能会有不同的 — 有时甚至是冲突的 — 要求。您需要一种方法来隔离每个项目,这样为一个项目安装软件包就不会强制为第二个项目安装相同的软件包。

这是通过虚拟环境来实现的。虚拟环境,或 venv,是一个隔离的环境,可以很容易地被创建、销毁或重新创建。安装在虚拟环境中的任何包都只能在虚拟环境内内访问。虚拟环境有时被称为 "沙盒" — 一个安全的实验场所,在这里,如果你犯了错误,你可以推倒你建立的一切,然后重新开始。

Python 提供了用于创建新虚拟环境的 venv 模块。每个虚拟环境都有一个名称,用来标识该环境。要创建一个名为 "my-venv" 的新虚拟环境,请运行:

$ python -m venv my-venv

用于创建虚拟环境的 Python 版本将是虚拟环境内默认使用的版本。如果您安装了多个 Python 版本,或者使用 pyenv 之类的工具来管理 Python 版本,请确保当前激活的 Python 版本(或在调用 -m venv 命令时引用的版本)是您想要的版本。一旦创建了虚拟环境以后,就不能更改其使用的 Python 版本。要更改 Python 版本,就需要重新创建一个新的虚拟环境。

调用 -m venv创建虚拟环境,但该环境尚未激活。虚拟环境是磁盘上的一组文件,存储在与环境名称相匹配的目录中。要激活虚拟环境,需要运行作为虚拟环境一部分的、生成的其中一个文件:

$ source my-venv/bin/activate

这将在命令行提示符中添加一个前缀,让你知道自己处于虚拟环境中:

(my-venv) $

当虚拟环境被激活后,任何 pip install 命令将只会影响当前虚拟环境。改变当前目录不会影响 — 只要提示符有前缀,那么该虚拟环境则处于已激活状态。

如果打开第二个终端窗口,环境将处于活动状态--您需要在每次要使用环境的终端会话中重新激活环境。如果出现关于库没有安装的错误,但是您确定您安装了这个库 — 检查虚拟环境是否已被激活。

要停用虚拟环境,请运行:

(my-venv) $ deactivate

一旦停用,该前缀将从提示符中删除。