虚拟环境
为什么要使用虚拟环境?
虚拟环境好似一个抽屉,抽屉之间的各种程序的运行都互不干扰。有了虚拟环境,一台电脑里能处理多个版本的django项目。
venv库
安装
venv库是python自带库。
使用
创建一个名为myproject_env的虚拟环境:python3 -m venv myproject_env
激活虚拟环境:source myproject/bin/activate
- 常见错误:'source' 不是内部或外部命令,也不是可运行的程序
或批处理文件。-
原因:window系统没有source这个命令,直接用activate即可
-
解决:
cd myproject/Scripts
activate
-
前面多了个括号代表已经进入了虚拟环境。
退出虚拟环境:deactivate
virlualenv库
安装
- linux
$ sudo pip3 install virtualenv
- window
pip install virtualenv
使用
创建一个名为myproject_env的虚拟环境:
$ virtualenv myproject_env
- linux
激活虚拟环境:
$ source myproject_env/bin/activate // linux
$ activate // window
- window
cd myproject-env/Scripts
activate
当前面出现"(myproject_env)"时证明激活成功。
退出虚拟环境:
$ deactivate
venv与virtualenv区别
- venv是python自带,无需安装,但是要在python3.3以上环境才可以使用。
- virtualenv 不是python自带,需要用pip进行安装,但是它可以兼容与python2和python3。
virtualenvwrapper库
相比virtualenv库,virtualenvwrapper库更加的方便。它将所有的虚拟环境统一到一个文件夹中,安装virtualenvwrapper时会自动安装virtualenv。
安装
linux:
$ pip3 install virtualenvwrapper
window:
> pip3 install virtualenvwrapper-win
常见问题即解决:mkvirtualenv is not found.
出自于原文:http://xieboke.net/article/23/
创建虚拟环境的主目录:
# mkdir $HOME/.envs
在 ~/.bashrc 添加环境变量:
# vim ~/.bashrc
添加如下内容
VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
export WORKON_HOME=$HOME/.envs
source /usr/local/bin/virtualenvwrapper.sh
保存退出:wq
刷新 ~/.bashrc:
# source ~/.bashrc
使用
创建环境:
$ mkvirtualenv myproject_env
进入环境:
$ workon myproject_env
退出环境:
$ deactivate
删除某个环境:
$ rmvirtualenv myproject_env
列出所有环境:
$ lsvirtualenv // 或者使用workon直接列出
进入虚拟环境所在目录:
$ cdvirtualenv myproject_env
虚拟环境中找到某个包的位置:python3 -c "import django;print(django.__path__)"即可!
vscode使用python虚拟环境:
Ctrl+Shift+P,选择Python:Select Interpreter。
选择其中一个虚拟环境即可。