蟒蛇

支持多种编程范式的通用高级编程语言。

多个Python解释器

如果您正在开发一个Python软件,您可能需要测试它在多个Python解释器上。在费多拉,这很简单:你要做的就是使用dnf公司来安装您需要的。

Fedora包括以下所有Python版本上游支撑,一些旧版本,可能是新版本的预发布版本。

在撰写本文时,Fedora有以下Python在存储库中为您做好准备:

  • CPython 3.11号机组
  • CPython 3.10
  • CPython 3.9
  • CPython 3.8
  • CPython 3.7
  • CPython 3.6
  • CPython 2.7
  • PyPy 2型
  • PyPy 3.7
  • PyPy 3.8型
  • PyPy 3.9
  • 微型蟒蛇

真是个窝,不是吗?您可以这样安装它们:

$ 苏多脱氧核糖核酸安装蟒蛇3.9#获得CPython 3.9
$ 苏多dnf公司安装蟒蛇3.8#获得CPython 3.8
$ 苏多dnf公司安装蟒蛇3.7#获得CPython 3.7
$ 苏多dnf公司安装蟒蛇3.6#获得CPython 3.6
$ 苏多脱氧核糖核酸安装蟒蛇2.7#获得CPython 2.7
$ 苏多dnf公司安装pypy2 pypy3.9 python3.10#立即获得更多

之后,您可以运行交互式控制台或脚本,例如,CPython 3.6:

$ 蟒蛇3.6Python 3.6.12(默认时间,2020年8月19日00:00:00)linux上的[GCC 10.2.1 20200723(Red Hat 10.2.1-1)]键入“help”、“copyright”、“credits”或“license”以获取更多信息。>>> 

警告:出于生产目的,您应该使用蟒蛇3仅包。其他CPython版本可能是不稳定的甚至是危险的(要么是因为它们非常古老,要么是完全相反的α/β质量)且仅用于开发。

获取并使用毒物检测

毒素是帮助您测试Python代码的工具在多个Python上。如果您通过dnf包管理器将其安装在Fedora上,您将自动获取所有受支持的CPython和PyPy:

$ 苏多dnf公司安装毒物

如果你还不熟悉毒物,不用担心。这个简短的示例将显示你如何开始。

让我们创建一个目录,并在其中创建一个简单的Python文件,该文件将显示以下内容:

#说.py打印('Fedora是Python开发人员的最佳操作系统', 结束='\\n\n')

现在我们将测试它是否适用于所有的Pythons和毒物。我们将为tox创建一个简单的配置文件,毒素ini,相同目录:

[毒物]envlist=py27、py37、py38、py39、pypy、pypy3skipsdist=真[测试环境]命令=python say.py

这个环境清单指令定义要测试的Python列表。通常,tox假设您正在用自己的项目进行测试设置.py。对于这个演示的简单性,我们没有使用它,我们需要告诉通过毒物滑雪运动员选项。最后命令在中[测试环境]部分告诉tox要运行的命令用于测试。通常情况下,这是python setup.py测试,pytest测试或类似情况。

使用毒素ini到位,运行毒物在同一目录中:

$ 毒物[...]错误:py27:命令失败py37:命令成功py38:命令成功py39:命令成功错误:pypy:命令失败pypy3:命令成功

正如您所看到的,脚本有点问题:它只适用于Python 3。完整的tox输出(此处省略)包含确切的错误。如果您还想支持旧的Python 2,则必须修复它:

#说.py __未来__ 进口 打印函数
打印('Fedora是Python开发人员的最佳操作系统', 结束='\\n\n')
$ 毒物[...]py27:命令成功py37:命令成功py38:命令成功py39:命令成功pypy:命令成功pypy3:命令成功祝贺:)

如果你想在你的项目中使用毒素,你可以在文档.

创建虚拟环境和安装软件包

Fedora仅为当前版本的蟒蛇3.对于所有其他口译员,您需要安装软件包PyPI公司,Python包索引。

最好的方法是使用Python虚拟环境。创建它们的调用因不同的Python版本而异。安装在虚拟环境中的程序包仅在环境被激活。在这里,您可以看到两个在文件夹中创建虚拟环境的演示命名的环境价值并在其中安装一些软件包。

Python 3(包括PyPy 3)

Python 3的最新版本包括静脉模块,可以创建虚拟环境。请参阅PyPI管段(&P)了解详细信息。

$ 蟒蛇3.9-米静脉环境价值  #创造环境
$ 源环境/箱子/激活#激活它
(环境)$ 蟒蛇-米pip(点阵)安装请求#使用pip安装软件包
...(环境)$ 蟒蛇#从该环境中运行python
Python 3.9.0(默认为2020年10月6日00:00:00)linux上的[GCC 10.2.1 20200723(Red Hat 10.2.1-1)]键入“help”、“copyright”、“credits”或“license”以获取更多信息。>>>导入请求>>>...>>> 出口()
(环境)$ 停用#回到“正常”状态

环境是一个目录。如果您不再需要它,请停用它并用删除它rm-rv环境.

Python 2.7,PyPy 2

对于其他Python版本,一个名为虚拟(virtualenv)可以创建虚拟环境:

$ 苏多dnf公司安装/usr/bin/virtualenv#安装必要的工具
$ 虚拟(virtualenv)--蟒蛇/usr/bin/python2.7环境价值  #创建virtualenv
使用解释器/usr/bin/python2.7运行virtualenvenv/bin/python2.7中的新python可执行文件同时在env/bin/python中创建可执行文件正在安装setuptools,pip。。。完成。$ 源环境/箱子/激活#激活它
(环境)$ 蟒蛇-米pip(点阵)安装请求#用pip安装软件包
...(环境)$ 蟒蛇#从虚拟环境中运行python
Python 2.7.11(默认值,2016年7月8日19:45:00)linux2上的[GCC 5.3.1 20160406(Red Hat 5.3.1-6)]键入“help”、“copyright”、“credits”或“license”以获取更多信息。>>>导入请求>>>...>>> 出口()
(环境)$ 停用#回到“正常”状态

微型蟒蛇

MicroPython不支持虚拟环境。它确实有一个名为upip(统一ip),您可以使用它安装支持MicroPython的软件包。运行它以了解更多信息:

$ 微量ython-米upip(统一ip)

作者:Jarek Prokop公司,米罗·赫罗克,尼克·迪歇尔,彼得·维克多林,矩阵图