“虚拟环境”是处理 Python 项目时的一个重要元素,因为它将所有文件和依赖项存储在一个位置,以便于访问和维护。拥有一个组织良好的虚拟环境变得非常重要。因此,在本文中,我们将详细讨论维护干净整洁的虚拟环境的各种方法。
什么是“虚拟环境”,它为什么有用?
考虑这样一种情况,您正在开发一个需要安装多个依赖项和包的项目,并且这些需求需要存储在您的本地计算机中,这需要存储空间,假设所有这些需求都分散在您的计算机上,造成混乱都过去了,那不是很麻烦吗?
为了解决这个问题,我们尝试在我们的计算机上创建一个虚拟空间,该虚拟空间仍然特定于我们当前正在进行的项目,并且该空间不会受到外部的干扰,反之亦然。这个虚拟空间只不过是一个“虚拟环境”。
创建“虚拟环境”非常有用,因为它充当我们项目的实际机器,将其与我们的主机隔离并提高效率。
“清理”是什么意思?
清理虚拟环境意味着如果出现任何需要,我们可能必须以适当的方式组织和设置虚拟环境以获得更高的效率。
清理过程涉及不同的任务,例如删除可能不再对我们的项目有用的未使用和过时的包、保持包最新,以及我们可能正在深入研究的各种其他任务。继续阅读本文。
为什么清理虚拟环境很重要?
不必要的包和依赖项的积累
当您在一个项目上工作很长时间并将该项目开发成一个巨大的项目时,您可能会安装许多项目不再需要的软件包,因此您可能希望摆脱这些软件包不需要。在这种情况下,清理是必不可少的。
对性能和磁盘空间的影响
摆脱所有不必要的东西并使所有内容保持最新将大大提高和提高项目的性能和速度,并且还有助于有效地维护磁盘空间,因为存储空间是处理大型项目时非常重要的因素。
维护干净整洁的虚拟环境
因为我们一直在思考这样一种情况,我们正在做一个大项目,而大项目总是在团队环境中处理。
你编写和维护的代码也会被其他人看到和使用,没有人愿意在破旧的环境中工作,所以保持一个干净整洁的环境很重要,这样除了你之外的人也能了解正在发生的事情并了解情况。获得更好的感受和体验。
维护和组织虚拟环境不仅可以帮助您,还可以使团队成员的生活更加轻松。
探索虚拟环境。
在开始清理某些内容之前,我们至少必须对其有一个了解,因此我们将概述与虚拟环境相关的一些概念,我们将需要继续阅读本文。
要了解有关 Python 虚拟环境的更多信息,您可以阅读链接的文章。
激活虚拟环境。
激活虚拟环境本身就是一个很大的话题,可以通过多种方法来完成。我将链接到 Python 的官方文档,您可以在其中轻松找到如何创建和激活虚拟环境。
创建虚拟环境。
登记我们的虚拟环境中的所有包
为了继续进行清理,对我们来说重要的是要了解我们的环境中正在发生的事情,也许还要看看我们环境中安装的所有东西。
要检查我们的环境中安装了什么,我们必须通过终端导航到我们已经创建的项目虚拟环境。到达所需位置后,您可以在终端中运行以下语句。
如果没有任何错误,运行上述语句将显示虚拟环境中所有已安装软件包的列表。
虚拟环境中的软件包列表Pip 将生成所有已安装软件包的类似列表,如上图所示。
清理“虚拟环境”的方法
由于我们已经讨论了所有相关因素并了解了我们希望保持虚拟环境干净的原因,并且还了解了有关虚拟环境是什么及其工作原理的一些知识,因此让我们继续讨论实际的方法我们可以“清理”环境。
手动管理和删除文件
在此方法中,您必须手动导航到虚拟环境并手动识别您需要的包和不需要的包。您可以保留需要的包并删除不需要的包。
这听起来很简单,但是当谈论巨大的包时,这样做将是一项麻烦的任务。必须有一种我们可以适应并尝试让事情对我们来说更容易的方法。让我们看看管理虚拟环境的一些更好的方法。
使用“点冻结”
Pip 是 Python 文件的包管理器,要了解更多信息,请查看此链接。
可以使用 pip freeze 以两种方式管理虚拟环境,我们将简要讨论。
确保您的系统上安装了最新版本的 pip。
在终端上运行以下命令来安装最新版本的 pip。
pip install --upgrade pip
Pip freeze > 要求.txt要尝试此方法,首先,您必须导航到终端的虚拟环境并在终端中输入以下命令。
pip freeze > requirements.txt
如果操作正确,此命令将自动浏览您的软件包列表并在当前目录中开发一个文本文件。该文本文件将包含项目的所有基本依赖项,并忽略所有不必要的依赖项。
一旦这个文本文件准备好,您只需参考列表并删除在requirements.txt文件中未提及的包,这最终将只在虚拟环境中留下必要的包,删除所有不必要的包。
一旦确定不需要哪些软件包,您可以在同一终端上运行以下命令。
pip uninstall <package_name>
Pip freeze > to-unistall.txt导航到终端中的虚拟环境并运行以下常见命令。
pip freeze > to-uninstall.txt
pip uninstall -r to-uninstall.txt
上面的命令会遍历您的包并识别您的包不需要哪些包,或者换句话说,确定不需要的包。
该命令的第一行负责确定和制作我们项目不需要的包列表,并将其写入当前目录中的文本文件“to-unistall.txt”。
该命令的第二行转到“to-unistall.txt”文件,读取它,并自动删除该文本文件中提到的所有包。
这可能是一次性删除所有不需要的包的最佳方法之一。
删除临时文件和缓存
随着项目的进行和规模的扩大,它往往会产生临时文件和一些缓存,无故占用我们的磁盘存储并降低整体性能,但如果出现问题,我们肯定也有解决方案。
我们来看看这个问题的解决方法。
首先,导航到终端上的虚拟环境,然后在终端上运行以下代码。
运行上面的代码将自动删除所有由包开发的临时文件和缓存。
这样做将提高项目的存储效率并清除所有不必要的占用磁盘空间,为重要的包提供空间。
更新过时的软件包
随着技术的发展,我们使用的软件包也往往很快就会过时,并且由于我们正在谈论维护我们的虚拟环境,因此我们的环境拥有所有最新的软件包并且没有任何内容是过时的,这一点很重要。
为此,我们首先必须通过终端进入虚拟环境并运行下面给出的命令。
运行上述命令将显示您环境中所有过时软件包的列表,一旦获得该列表,您就可以使用以下命令轻松地一一更新所有这些软件包。
pip install --upgrade <package_name>
遵循上述步骤将帮助您使环境中的所有软件包保持最新。
使用“pip 自动删除”
要使用 autoremove 命令,您首先必须使用 pip 安装它。
pip install pip-autoremove
运行以下代码将自动删除或删除包及其未使用的依赖项。
pip-autoremove <package_name>
到目前为止,在这篇文章之后,我们已经介绍了几乎所有可以用来保持虚拟环境整洁并尽可能保持干净的方法。
维护“虚拟环境”的最佳实践
定期更新虚拟环境
跟踪虚拟环境中发生的情况并始终更新它对于维护干净且无混乱的环境非常有帮助。
记录变更和更新
记录所有发生的变化是一种很好的做法,无论是作为团队工作还是作为个人工作时都可以遵循。人们可以解决上面研究的“requirements.txt”之类的问题,以了解项目的要点。
结论
由于我们已经广泛介绍了个人可以遵循的维护干净整洁的虚拟环境的所有方法和实践,遵循这些实践肯定会让您在其他人眼中成为更好的开发人员,并且拥有一个组织良好的环境将使您保持健康平静地从事大型项目。
解决上述实践实际上将帮助您很好地管理您的项目,因为项目完全依赖于虚拟环境,并且如果您的虚拟环境已排序,您确信项目也已排序。
参考
官方虚拟环境文档。
如何清理虚拟环境。