几个月前,我开始使用 Python 进行开发。我使用虚拟环境是因为我在使用 Python 绑定安装 OpenCV 的教程中强烈建议这样做。我想知道安装新模块(在 Ubuntu 上)的最佳实践是什么。虚拟环境的名称是cv
。从命令行安装时,是否应该在虚拟环境中? IE。我应该输入
pip3 install modulename
or
workon cv
pip3 install modulename
或两者?它应该有所作为吗?
virtualenv 是做什么的?
虚拟环境 https://virtualenv.pypa.io/en/stable/将本地 python 解释器复制到文件夹中,一旦激活,将其位置添加到您的文件夹中PATH
- 意味着那里的 python 可执行文件将用于运行 python 代码。本质上就是这样。
我如何激活它/检查它是否处于活动状态?
创建 virtualenv 后,例如,virtualenv venv
,您可以使用以下命令激活它source ./venv/bin/activate
- done.
如果您不确定 venv 是否处于活动状态,通常只需查看命令行即可,其中包含其名称,如下所示:(venv) user@workstation:~$
。或者,您可以运行python -c "import sys; print(sys.executable)"
,然后它将打印 venv 的位置而不是/usr/bin/python
,或者任何系统默认值。
由于很多人使用 PyCharm,请遵循这些说明 https://www.jetbrains.com/help/pycharm-edu/creating-virtual-environment.html在 IDE 中使用 venv。它简单又方便,所以如果你使用 PyCharm,我建议你用它来处理你的 venvs。
为什么我想要这一切?
相互隔离开发环境可以为您节省lot的头痛。也许您想尝试最新的 python 开发版本,但不想在您珍贵的系统上释放它,也许您需要为不同的项目使用不同版本的 python 包。一般来说,在源代码更改时保持执行环境静态是一个非常好的主意。
如何将软件包安装到虚拟环境中?
默认情况下,安装软件包所需的工具,setuptools
, pip
, and wheel
已经打包到新创建的 venv 中,您只需安装一个包即可pip install package_name
。注意不使用须藤,因为这会将执行用户更改为 root 并绕过 venv 激活。
一些用例
-
virtualenv -p pyhton3.7 venv
-- 我想使用与我的默认解释器不同的 python 解释器,例如python3.7
. 需要在系统上安装所述 python 解释器 https://stackoverflow.com/questions/2547554/official-multiple-python-versions-on-the-same-machine!
-
virtualenv --system-site-packages venv
-- 我想使用 venv 中使用的 python 解释器已安装的所有软件包。如果您经常使用像 numpy 这样的大包,这很有用。
-
virtualenv venv && source ./venv/bin/activate && pip install -r requirements.txt
-- 从 github 克隆一个项目后(并且cd
ing into it),为其设置一个独立工作的Python环境。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)