目录
- 前言
- 一、配置虚拟环境
- 1.1 Windows
- 1.2 Linux
- 二、常用管理命令
- 三、FAQ
前言
其实这都是 Python 基础该掌握的,今天博客记录一下,方便自己或其他人阅读。虚拟环境的好处在于达到环境上的隔离,如:不同的项目有自己独特的环境,有自己项目的第三方包等等,而如果所有项目的环境都在一起,那势必会造成环境冲突。因此对于开发人员而言,学会配置虚拟环境显然是有很必要的。
一、配置虚拟环境
1.1 Windows
1、虚拟工具安装
-
cmd 终端窗口安装虚拟环境管理工具
pip install virtualenv virtualenvwrapper-win # 下图可见,当你安装virtualenvwrapper-win时,也会自动安装virtualenv
-
验证是否安装
pip freeze
-
添加环境变量(可选)
默认情况下,使用 mkvirtualenv 创建虚拟环境后,会在C盘用户目录下的 Envs 文件夹中生成相应的虚拟环境。
因此我们可以添加 WORKON_HOME 环境变量来指定你的虚拟环境路径,当我们没有指定虚拟环境目录的时候,就会默认创建在环境变量 WORKON_HOME 指定的目录中。
当我们创建虚拟环境且指定了其他虚拟环境目录(不管是否配置了 WORKON_HOME 环境变量),最终会在我们指定的路径下创建虚拟环境。
计算机右键 > 属性 > 高级系统设置 > 环境变量 > 系统变量 > 新建
2、创建虚拟环境
工具安装完成后,就可以来创建虚拟环境里
-
cmd 命令行方式
你要在哪里创建虚拟环境,你就进入哪个目录执行该命令即可
mkvirtualenv myvenv3
这个时候,就可以用我们的 Pycharm 集成开发工具来打开我们的虚拟环境:
紧接着往下配置:
点击 Create 后,我们打开终端,就可看见当前的
-
Pycharm 客户端方式
File
- - >New Project
- - >Pure Python
- - >New environment using
选择要创建虚拟环境的目录,客户端方式会为我们自动创建虚拟环境,无需我们手动安装工具和创建虚拟环境以及上面的各种点点操作。
1.2 Linux
1、虚拟工具安装
-
shell 终端执行安装
与 Windows不同的是 Linux 下 virtualenvwrapper 不需要后缀 -win
pip install virtualenv virtualenvwrapper
-
验证是否安装
pip freeze
-
配置环境变量
在 .bashrc、.bash_profile 或 .zshrc 文件中添加如下三行内容
vim ~/.bash_profile
export WORKON_HOME=~/.virtualenvs export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3 source /usr/local/bin/virtualenvwrapper.sh # 说明: # WORKON_HOME:虚拟环境的存储位置 # VIRTUALENVWRAPPER_PYTHON:指定 Python 解释器的路径
source ~/.bash_profile
2、创建虚拟环境
同 Windows 操作。
二、常用管理命令
1、创建新的虚拟环境
mkvirtualenv <your_env_name>
2、查看所有虚拟环境
仅限于查看通过命令行方式创建的虚拟环境。
workon
3、进入虚拟环境
workon /yourpath/<your_env_name>
4、退出虚拟环境
deactivate
5、删除虚拟环境
rmvirtualenv <your_env_name>
三、FAQ
virtualenv 和 virtualenvwrapper 的区别
- virtualenv 是一个独立的 Python 包,它提供了创建和管理虚拟环境的功能。你可以使用 virtualenv 命令来创建虚拟环境,并使用 activate 命令来激活虚拟环境。virtualenv 可以在任何操作系统上使用。
- virtualenvwrapper 是 virtualenv 的一个扩展工具,它提供了更方便的命令和功能来管理虚拟环境。它是基于 virtualenv 构建的,并提供了一组额外的命令,如 mkvirtualenv(创建虚拟环境)、workon(激活虚拟环境)、lsvirtualenv(列出虚拟环境)等。virtualenvwrapper 主要在 Linux 和 macOS 上使用,但也可以在 Windows 上使用。
总结来说,virtualenv 是一个基本的虚拟环境管理工具,而 virtualenvwrapper 是对 virtualenv 的扩展,提供了更多的便利功能和命令来管理虚拟环境。选择使用哪个工具取决于你的需求和个人偏好。
—END