1 概念
- 一个独立的局部的 Python 环境
- 完全模拟系统全局 Python 环境的使用,如安装、卸载包到逻辑操作等
2 作用
- 让项目运行在一个独立的局部的 Python 环境中,使采用不同环境的项目互不干扰。
3 安装虚拟环境
- 1. sudo pip install virtualenv # 安装虚拟环境
- 2. sudo pip install virtualenvwrapper # 安装虚拟环境扩展包
我在安装这的时候出问题了,报的错误是缺少pbr(这里注意安装的时候提示的报错信息,查看Error:后面的内容)
直接pip install pbr即可,pbr是OpenStack用于统一构建setuptools配置的一个工具,主要用于打包,这里估计是关联库。
- 3. vim ~/.bash_profile # 用户根目录下编辑.bash_profile文件,加入以下3句
-
export WORKON_HOME=$HOME/.virtualenvs export VIRTUALENVWRAPPER_SCRIPT=/Library/Frameworks/Python.framework/Versions/3.7/bin/virtualenvwrapper.sh export VIRTUALENVWRAPPER_PYTHON=/Library/Frameworks/Python.framework/Versions/3.7/bin/python3 export VIRTUALENVWRAPPER_VIRTUALENV=/Library/Frameworks/Python.framework/Versions/3.7/bin/virtualenv source /Library/Frameworks/Python.framework/Versions/3.7/bin/virtualenvwrapper.sh VIRTUALENVWRAPPER_PYTHON=/usr/local/bin/python3
第一条是 定义虚拟工作目录文件夹的存放位置
第二条是 需要填写 之前安装的虚拟机的 virtualenvwrapper.sh 的位置 具体可以 which virtualenvwrapper.sh source是更新这个文件使其生效
第三条是 需要填写 本机python3 的安装位置 具体可以 which python3
备注:这里注意了,你是python几就写对应的python路径
测试是否安装成功了,可以用mkvirtualenv -p python3 npy007命令,安装个虚拟环境试试,如果能成功即说明成功了。
zaili@zailideair ceshi % mkvirtualenv -p python3 npy007
created virtual environment CPython3.7.3.final.0-64 in 341ms
creator CPython3Posix(dest=/Users/zaili/.virtualenvs/npy007, clear=False, global=False)
seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/Users/zaili/Library/Application Support/virtualenv)
added seed packages: pip==20.1.1, setuptools==49.1.0, wheel==0.34.2
activators BashActivator,CShellActivator,FishActivator,PowerShellActivator,PythonActivator,XonshActivator
virtualenvwrapper.user_scripts creating /Users/zaili/.virtualenvs/npy007/bin/predeactivate
virtualenvwrapper.user_scripts creating /Users/zaili/.virtualenvs/npy007/bin/postdeactivate
virtualenvwrapper.user_scripts creating /Users/zaili/.virtualenvs/npy007/bin/preactivate
virtualenvwrapper.user_scripts creating /Users/zaili/.virtualenvs/npy007/bin/postactivate
virtualenvwrapper.user_scripts creating /Users/zaili/.virtualenvs/npy007/bin/get_env_details
(npy007) zaili@zailideair ceshi %
特别备注:不知道我的电脑怎么回事的,关闭终端后再运行mkvirtualenv even会提示command not found: mkvirtualenv,这时候可以再次运行下source ~/.bash_profile既可解决此问题。
至此你的安装和配置环境结束了,下面即将开始学习怎么使用了,
4 使用虚拟环境
cd到需要创建虚拟的目录
新建虚拟环境:mkvirtualenv -p python3 enev
或者直接创建:mkvirtualenv enev
进入虚拟环境或者切换虚拟环境工作:workon enev
也可以进入虚拟环境根目录:source bin/activate
说明:如果系统是 Windows 的话,则不需要带上 source 命令,直接 cd 进入Scripts脚本文件夹中,然后执行 activate 和 deactivate 脚本即可。与 Mac 不同的是,虚拟环境的 bin 目录下只有 activate 脚本,没有 deactivate 脚本。
查看机器上有多少虚拟环境:lsvirtualenv -b
退出虚拟环境:deactivate
删除虚拟环境:rmvirtualenv enev
虚拟环境下安装包:pip install XXX # 前面不能带sudo
查看虚拟环境中安装了哪些python包: pip list
复制虚拟环境 $cpvirtualenv enev env3(enev是源虚拟环境,后买的env3是复制后的)