virtualenv和virtualenvwrapper使用教程
本文更新于2021-04-14
文章目录
随着越来越熟悉Python开发,为了多个项目之间的依赖不会混淆混乱,也为了更方便的管理多个项目和切换多个环境,就需要使用到Python虚拟环境管理工具了,常见的Python虚拟环境管理工具也就是这么三种:anaconda,virtualenv,virtualenvwrapper。
个人理解,anaconda太过于臃肿,里边集成了jupyter,spyder等工具,而且即使换了清华源,下载速度也不尽人愿,virtualenv和virtualenvwrapper是另一种Python虚拟环境管理工具,易于安装,命令简单,缺点是只能使用已有的Python版本创建环境,不能自动下载,网上有virtualenv搭配pyenv的方案,但是作者由于Github网速过慢,克隆失败而未曾实验,有兴趣的小伙伴可以自行折腾。
environment | version |
---|---|
CentOS | 8.2 |
Python | 3.9.4 |
pip | 21.0.1 |
virtual | 20.4.3 |
virtualenvwrapper | 4.8.41 |
1.编译安装Python 3.9.4
# 更新系统
yum update -y
# 卸载系统自带Python
yum uninstall -y python3 pip3
# 下载Python 3.9.4 源码包
wget https://www.python.org/ftp/python/3.9.4/Python-3.9.4.tar.xz
# 解压Python源码包
xz -d Python-3.9.4.tar.xz
tar -xvf Python-3.9.4.tar
# 开始编译
cd Python-3.9.4/
./configure --prefix=/usr/local/python-3.9.4
make
make install
# 创建软连接
mv /usr/bin/python3 /usr/bin/python3_bak
mv /usr/bin/pip3 /usr/bin/pip3_bak
ln -s /usr/local/python-3.9.4/bin/python /usr/bin/python
ln -s /usr/local/python-3.9.4/bin/pip /usr/bin/pip
# 添加系统环境变量,编辑~/.bashrc或者~/.zshrc
# 使用系统默认bash执行以下命令:
echo 'export PATH=/usr/local/python-3.9.4/bin:$PATH' >>~/.bashrc
source ~/.bashrc
# 使用zsh执行以下命令:
echo 'export PATH=/usr/local/python-3.9.4/bin:$PATH' >>~/.zshrc
source ~/.zshrc
# 验证
python -V
pip -V
2.pip安装virtualenv和virtualenvwrapper
# pip 换源
pip config set global.index-url http://mirrors.cloud.aliyuncs.com/pypi/simple/
# 安装virtualenv和virtualenvwrapper
pip install virtualenv
pip install virtualenvwrapper
# 自定义virtualenv存储位置,在~/.bashrc或者~/.zshrc末尾添加以下内容:
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python
export WORKON_HOME=/lwf/virtualenvs
source /usr/local/bin/virtualenvwrapper.sh
# (可选)防止直接调用系统pip造成依赖混乱,在~/.bashrc或者~/.zshrc末尾添加以下内容:
export PIP_REQUIRE_VIRTUALENV=true
# 配置立即生效
source ~/.bashrc
source ~/.zshrc
3.virtualenv常用命令
# virtualenv是在项目文件夹中创建独立的虚拟环境
# virtualenvwrapper是把所有环境放置在WORKON_HOME变量指定的文件夹中
# 新建名为test的虚拟环境
# --no-site-packages参数是不复制系统已经存在的第三方包,以便得到一个纯净的虚拟环境
virtualenv --no-site-packages test
# 创建成功后,shell提示符会出现环境名称的前缀
# 创建指定python版本的环境,-p参数需要指定已经存在的python可执行文件路径
virtualenv -p /usr/bin/python2.7 test
# 查看已经存在的环境列表
lsvirtualenv
# 进入指定环境目录
cdvirtualev
# 删除环境
rmvirtualenv test
# 退出环境
deactivate
4.virtualenvwrapper常用命令
# 创建名为test的环境
mkvirtualenv test
# 查看已经存在的环境列表
workon
# 切换虚拟环境
workon 环境名
# 退出虚拟环境
deactivate
# 删除环境
rmvirtualenv 环境名