为python设置虚拟环境

时间:2020-12-27 17:43:50

标签: python cygwin python-venv

如果我听起来真的很无知,请原谅我,但在技术/IT 方面,我是一个完全的新手。在你的回答中假设我什么都不知道,因为我可能不知道。我昨天学会了使用终端,所以只知道基本命令。我还没有完全适应终端。我使用的命令行程序是 cygwin。在 Windows 10 机器上运行它。我正在使用 python3。

我已经完成了 Python 初学者课程,现在想开始构建现实世界的项目。我正在尝试建立一个虚拟环境,以便我可以开始构建一个 python 项目。 I这些是我采取的以下步骤:

  1. 我创建了一个名为 Projects 的项目目录,然后在其中为我的实际项目创建了一个名为 Marketing project 的目录。
/cygdrive/c/Program Files (x86)/Python/Python385/Projects/Marketing Project
  1. 我尝试运行 python3 -m venv env 命令来创建一个名为 env 的虚拟环境,但它不起作用。我收到以下错误:
$ python3 -m venv env

- bash: /cygdrive/c/Users/44784/AppData/Local/Microsoft/WindowsApps/python3: Permission denied

我该如何解决这个问题,以便这个命令可以工作?

1 个答案:

答案 0 :(得分:0)

如果您使用的是 Python 3 版本,其中包含虚拟环境支持,因此您只需创建一个:

$ python3 -m venv venv

在这里,我要求 Python 运行包 venv 并创建一个名为 venv 的虚拟环境。命令中的第一个 venv 是 Python 虚拟环境包的名称,第二个是您可以用于特定环境的虚拟环境名称。随意将第二个 venv 替换为您要分配给虚拟环境的其他名称。

命令完成后,您将拥有一个名为“venv”的目录,其中存储虚拟环境文件。

如果您使用的 Python 版本早于 3.4(包括 2.7 版本),则本机不支持虚拟环境。对于这些版本的 Python,您需要先下载并安装名为 virtualenv 的第三方工具,然后才能创建虚拟环境。

安装 virtualenv 后,您可以使用以下命令创建虚拟环境:

$ virtualenv venv

无论您使用何种方法创建它,您都应该创建虚拟环境。要激活您全新的虚拟环境,请使用以下命令:

$ source venv/bin/activate

# Output
(venv)$ 

如果您使用的是 Microsoft Windows 命令提示符窗口,则激活命令略有不同:

$ venv\Scripts\activate

创建并激活虚拟环境后,您终于可以安装所有项目包了。

另一种创建和激活虚拟环境的方法

虚拟环境包装器

我还想向您介绍 virtualenvwrapper 的概念。 virtualenvwrapper 是一组扩展,允许创建和删除虚拟环境,并且基本上可以管理您的开发工作流,从而更轻松地一次处理多个项目,而不会在它们的依赖项中引入冲突。

我将向您展示如何设置您的 Python 环境以在 Ubuntu 20.04 中使用虚拟环境包装器。您需要做的是:

  1. 安装 pip3(如果您还没有安装)
  2. 安装virtualenv
  3. 安装virtualenvwrapper
  4. 编辑 .bashrc/ 文件或 .bash_profile 文件,或同时编辑两者

设置虚拟环境

在您的主目录(或您可以选择的任何其他目录)中打开您的终端。首先,您需要创建一个特殊的目录,该目录将被隐藏,用于存储您所有的虚拟环境

创建一个隐藏的虚拟环境文件夹:

$ mkdir .virtualenv # the dot(.) denotes that the file is hidden

安装pip3

$ sudo apt install python3-pip

确认安装 pip3

$ pip3 --version # checks for the version of pip3
$ which pip3 # shows you the location of pip3 in your system

使用 virtualenv 安装 pip3

$ pip3 install virtualenv # install virtualenv
$ which virtualenv # find where it is located

现在是安装 virtualenvwrapper 的时候了:

$ pip3 install virtualenvwrapper

您将通过添加一行来修改您的 .bashrc 文件,该行将调整每个新的虚拟环境以使用 Python3。您需要将虚拟环境指向您在上面创建的目录(“.virtualenv”)

使用 .bashrc 编辑器打开 vim 文件:

$ vim .bashrc

如果您发现系统中没有 vim,请确保通过以下方式安装:

$ sudo apt install vim

.bashrc 文件将在您的终端中打开。关于 vim 编辑器,您应该注意的一点是它不使用诸如 ctrl + C 等传统编辑命令。相反,它使用自己的特殊命令来允许您与其交互。了解如何在 vim 编辑器 here 中导航。

现在,您需要了解两个基本命令:

  • 如何进入insert模式以便进行编辑
  • 如何save and quit

现在您的编辑器已打开,您需要开始进行更改。按向下箭头键滚动到文件底部。在编辑器的最底部,按键盘上的字母 i 进入插入模式(i 可能表示“插入”)。

添加这些行:

#Virtualenvwrapper settings:
export WORKON_HOME=$HOME/.virtualenvs
VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
. /usr/local/bin/virtualenvwrapper.sh

esc 并输入 :wq,然后按 Enter。这将允许您保存更改并退出编辑器。关闭您的终端并重新打开它。

现在您需要重新加载 bashrc 脚本。有两种方法可以做到:

  1. 关闭并重新打开终端(如上完成)或
  2. 在终端中执行此命令:source ~/.bashrc

您已完成虚拟环境的设置。

创建您的虚拟环境

设置完成后,您可以使用 virtualenvwrapper

virtualenvwrapper 允许您同时创建和激活您的虚拟环境。要创建虚拟环境,请使用命令 mkvirtualenv:

$  mkvirtualenv <name-of-your-virtual-environment> # for example mkvirtualenv marketing_app

# Output
(marketing_app)$ 

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

(marketing_app)$ deactivate

# Output
$ 

virtualenvwrapper 有几个命令可以让您非常轻松地管理您的虚拟环境。示例命令包括:​​

  • mkvirtualenv(同时创建并激活一个新的虚拟环境)
  • workon(用于激活现有的虚拟环境)
  • rmvirtualenv(删除现有的虚拟环境)
  • cpvirtualenv(复制现有的虚拟环境)

virtualenvwrapper 总结

完成初始设置后,您需要做的就是使用上述命令。

要创建一个新的虚拟环境,您只需运行以下命令:

$ mkvirtualenv marketing_app # create and activate virtual environment