Linux(我这里使用的是Ubuntu20.04),使用apt包管理工具默认对应的是python的3.8版本(当然目前看来各个python3版本差别不大)。
win10可以直接安装最新版本python。
虚拟环境的使用两者比较类似。
安装
有两种途径安装virtualenv虚拟环境。不知道两者之间的区别是啥。应该就是安装方式的不同吧,其实装的都是一个东西(待验证)。
apt包管理工具(仅Linux)
使用apt下载对应的虚拟环境管理工具:
sudo apt install virtualenv
sudo apt install virtualenvwrapper
pip进行包管理
Linux
使用pip进行包管理
sudo pip install virtualenv
sudo pip install virtualenvwrapper
windows
使用管理员权限打开cmd/powershell,安装virtualenvwrapper-win:
pip install virtualenvwrapper-win
注意事项
virtualenvwrapper可以提升你使用virtualenv时候的用户体验。
你可以自己指定一个虚拟环境的目录,不然虚拟环境会被安装到默认的目录下面:
export WORKON_HOME=~/Envs # 这里的‘~/Envs’即指定的目录。
mkdir -p $WORKON_HOME
第一次运行mkvirtualenv的时候,或者安装完成之后,模块会尝试执行virtualenvwrapper.sh文件进行初始化(如果没有进行则需要手动执行,找到virtualenvwrapper.sh的位置并运行source virtualenvwrapper.sh)。但是这个有可能会失败:
/usr/bin/python: No module named virtualenvwrapper
virtualenvwrapper.sh: There was a problem running the initialization hooks.
If Python could not import the module virtualenvwrapper.hook_loader,
check that virtualenvwrapper has been installed for
VIRTUALENVWRAPPER_PYTHON=/usr/bin/python and that PATH is
set properly.
原因是当前操作系统中有多个python环境,没有指定用哪一个。这时候需要在家目录的.bashrc下面添加一些代码(解决方式来源点击这里):
export VIRTUALENVWRAPPER_PYTHON='/usr/bin/python3'
# 这里的地址是指linux中python的地址,可以用“which python3”查一下
source /usr/local/bin/virtualenvwrapper.sh
# 这里的地址是virtualenvwrapper.sh的路径,通过“locate virtualenvwrapper.sh"进行查找。
然后应该就可以了。
使用
注意,任意目录下都可以输入以下指令。在windows下,只能在cmd中使用以下命令,powershell不生效。
创建虚拟环境
mkvirtualenv mywork //会创建一个名为mywork的虚拟环境
mkvirtualenv -p /usr/bin/python3 mywork //指定python版本创建虚拟环境
列出虚拟环境
lsvirtualenv
删除虚拟环境
注意:可以在任何目录执行删除操作,如果不知道名字,可以rmvirtualen + 两次Tab键,提示所有的虚拟环境
rmvirtualenv mywork
进入虚拟环境
workon mywork
此时命令行前会出现虚拟环境的名称
(mywork) ubuntu@ubuntu:~$
退出虚拟环境
deactivate