首页 > 编程知识 正文

python接口自动化框架(python集成开发环境都有哪些)

时间:2023-05-03 12:34:08 阅读:81495 作者:409

的这些工具可以简化您的Python环境,以确保顺利一致的开发实践。

资料来源: https://Linux.cn/article-12369-1.html作者: Moshe Zadka译者: Xingyu.Wang (正文字数: 2747,阅读时间约: 4分钟) ) )。

的这些工具可以简化您的Python环境,以确保顺利一致的开发实践。

Python是一种优秀的通用编程语言,总是作为第一种编程语言被教授。 20多年来,我为此写了很多书,但它仍然是我的首选语言。 虽然这个语言通常简单易懂(就像xkcd讽刺一样),但是没有人说构成Python环境也是一样简单。

复杂的Python环境。 xkcd

日常生活中有很多使用Python的方法。 我来说明一下我是怎么使用这些Python生态系统工具的。 但是说实话,我还在寻找更好的替代品。

使用 pyenv 来管理 Python 版本

计算机上运行特定版本的Python的最佳方法是使用pyenv。 该软件在Linux、Mac OS X和WSL2上运行。 这是我通常关心的三个“类UNIX”环境。

安装pyenv本身可能有点棘手。 一种方法是使用专用的pyenv安装程序。 这是使用curl | bash方法完成的。 详细内容请参照其说明。

如果是Mac (或运行Homebrew的其他系统),则可以按照这里的说明安装和使用pyenv。

按照说明安装和配置pyenv后,可以使用pyenv全局设置“缺省”的Python版本。 一般来说,你会选择你的“优先”版本。 这通常是最新稳定的版本,但如果有其他考虑,也可能会做出不同的选择。

使用

使用 virtualenvwrapper 让虚拟环境更简单

pyenv安装Python的一个优点是,后续安装的所有Python解释器环境都是自己的,而不是操作系统级别的。

通常,在Python本身内部安装某些东西不是最佳选择,但有例外。 在上面选择的“优先”Python上安装并配置virtualenvwrapper。 这样可以瞬间创建和切换虚拟环境。

本文将具体介绍如何安装和使用virtualenvwrapper。

这里推荐独特的工作流程。 为了创建运行时(runner ),可以创建可以大量重复运行的虚拟环境。 在此环境中,您可以安装您最喜爱的启动器——,也就是常用来运行其他软件的软件。 目前,我的优先事项是福克斯。

使用 tox 作为 Python 运行器

tox是自动化Python测试的优秀工具。 在每个Python环境中,我都会创建tox.ini文件。 无论使用什么样的系统进行持续集成,都可以实现。 可以使用上一篇文章中介绍的virtualenvwrapper work on语法在本地执行相同的操作。

$ workon runner

$ tox

这个工作流程之所以重要,是因为要在多个版本的Python和多个版本的依赖库中测试代码。 这意味着tox运行时有多个环境。 有些人试图以最新的依赖关系运行,有些人则试图以冻结的依赖关系运行(接下来将进一步介绍)。 我也可能会使用pip-compile在本地生成这些环境。

备注:我目前正在研究使用nox作为tox的替代品。 原因超出了本文的范畴,但值得一试。

使用 pip-compile 进行 Python 依赖性管理

Python是一种动态编程语言,意味着每次运行代码时都会加载依赖关系。 是否准确了解每个依赖关系的具体运行版本可能意味着代码是平稳运行还是意外崩溃。 这意味着需要考虑对管理工具的依赖。

对于每个新项目,请包含requirements.in文件。 通常,只有以下内容:

是的,没错。 只有一点的单行。 我在setup.py文件中记录了“松散”的依赖关系,如Twisted=17.5。 这与精确的依赖关系相反,如Twisted==18.1,如果需要修改特性或错误,则很难升级到新版本的库。

.的含义是“当前目录”,它使用当前目录下的setup.py作为依赖关系的源。

也就是说,使用pip-compile requirements.in requirements.txt将创建冻结的从属文件。 此依存关系文件可以在virtualenvwrapper创建的虚拟环境或tox.ini中使用。

在某些情况下,从requirements-dev.in (内容:[dev] )生成requirements-dev.txt或requirements-test.in )内容:

在这个流程中,我们正在讨论是否应该用dephell代替pip-compile。 dephell工具有许多有趣的功能,如使用异步HTTP请求下载依赖关系。

结论

Python的功能强大而有吸引力。 为了编写这些代码,我依赖着对我来说有效的特定工具链。 工具pyenv、虚拟容器、工具箱、管道组合都是独立的。 但是,它们各有各的作用,没有重复,我们一起构建了强大的Python工作流。

via :3359开放资源.com /体系结构/20/6/python-tools

作者: Moshe Zadka选题: lujun9972译者: wxy校对: wxy

本文由LCTT原创编译,Linux中国荣誉发售

点击“了解更多”可访问文内链接

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。