目录
在开发 Python 程序写项目的时候,难免会用上很多第三方的包,而如果只使用系统安装的时候的包,有时候需要在不同版本下测试运行的时候就会混乱,这个时候就需要一个独立的 Python 环境。
先前条件,已经在机器上安装好 Python 环境。
virtualenv
能创建一个独立的 Python 环境,达到隔离的效果,在使用的时候能随意切换,达到不同项目使用不同环境的效果,解决包冲突的问题。
- 安装
pip install virtualenv
- 创建虚拟环境
virtualenv [新环境名]
- 使用
source ./bin/activate
执行所创建的虚拟环境下的根目录的activate文件
- 退出
deactivate
- 删除
直接删除创建的文件夹就行
virtualenvwrapper
有上面的工具在使用的时候每次都需要 source ,而这个工具就对上面的使用进行多一层的封装,作为扩展来使用,可以更方便的切换环境,并且不像使用 virtualenv
一样随处都可以创建虚拟环境的文件目录,这个工具对虚拟环境的目录也进行统一管理,我们也不用去记目录所在地,就能直接在控制台上使用。
安装
pip install virtualenvwrapper
配置
- 创建虚拟环境管理目录
mkdir $HOME/.local/virtualenvs
- 在~/.bashrc中添加行:
export VIRTUALENV_USE_DISTRIBUTE=1 export WORKON_HOME=$HOME/.local/virtualenvs if [ -e $HOME/.local/bin/virtualenvwrapper.sh ];then source $HOME/.local/bin/virtualenvwrapper.sh else if [ -e /usr/local/bin/virtualenvwrapper.sh ];then source /usr/local/bin/virtualenvwrapper.sh fi fi export PIP_VIRTUALENV_BASE=$WORKON_HOME export PIP_RESPECT_VIRTUALENV=true
WORKON_HOME:表示虚拟环境存放的目录。
- 启动 virtualenvwrapper
source ~/.bashrc
使用
- 创建虚拟环境
mkvirtualenv [环境名]
mkvirtualenv --python=python3 [环境名]
可以通过 --python=python3
的指令来安装不同的python版本
- 删除
rmvirtualenv [环境名]
- 激活
workon [环境名]
- 退出
deactivate
- 列出所有环境
workon
或者 lsvirtualenv -b
查看所有指令
virtualenvwrapper —help
问题
- The path python3 (from –python=python3) does not exist
在使用 mkvirtualenv 命令来创建 python3 环境的时候出现这个错误,这时候尝试先安装对应的环境,之后再来执行这个命令,可能出现的原因是 mkvirtualenv 找不到 python3 相关的目录,猜测这个命令是基于本地环境来创建虚拟环境的,当在本地找不到相关的环境的时候就会异常,实测解决的方式就是下载 python3 的二进制文件编译安装,再来执行就能成功。
- mkvirtualenv 命令无效,找不到该命令
在使用的过程中,在 centos 系统下发现安装 virtualenvwrapper
之后的 virtualenvwrapper.sh
文件不在 /usr/local/bin/virtualenvwrapper.sh
下面,这个时候需要使用 find / -name virtualenvwrapper
命令来找到这个文件 /usr/bin/virtualenvwrapper.sh
,之后替换 .bashrc
文件配置中 的路径。
0 条评论