Windows虚拟环境
1.1 virtualenv的概述
virtualenv是用来创建Python的虚拟环境的库,虚拟环境能够独立于真实环境存在, 并且可以同时有多个互相独立的Python虚拟环境,每个虚拟环境都可以营造一个干净 的开发环境,对于项目的依赖、版本的控制有着非常重要的作用。
虚拟环境有什么意义?
如果我们要同时开发多个应用程序,应用A需要Django1.11,而应用B需要Django1.8怎么办?
这种情况下,每个应用可能需要各自拥有一套“独立”的Python运行环境。
virtualenv就是用来为一个应用创建一套“隔离”的Python运行环境。
1.2 virtualenv 的安装和使用
1.2.1,安装和创建virtualenv
-
安装虚拟环境:安装virtualenv跟安装一般的Python库是一样的操作,直接使用pip命令就行了:
pip install virtualenv -
创建虚拟环境:安装完成之后就可以使用virtualenv的命令来创建虚拟环境了, 首先需要进入需要创建虚拟环境的文件夹,比如F盘的envs文件夹, 然后使用以下命令创建一个虚拟环境,python版本的路径是可选的:
virtualenv 虚拟环境名称 [-p python版本的路径]
如:virtualenv env1
如:virtualenv env1 -p C:\Python36\python.exe
1.2.2,启动虚拟环境:
env1\Scripts\activate
进入虚拟环境后:
- 使用pip安装numpy模块
- 创建test.py文件,并在文件中使用numpy模块
- 在cmd命令窗口使用python test.py执行文件
1.2.3,退出虚拟环境(进入真实系统环境):
deactivate
(如果报错则使用:env1\Scripts\deactivate)
退出虚拟环境后再执行test.py:
在cmd命令窗口使用python test.py执行文件
1.3 virtualenvwrapper 的安装和使用 (virtualenvwrapper是virtualenv的包装版,以后用这个,更加方便)
Windows: pip install virtualenvwrapper-win
(Linux:pip install virtualenvwrapper)
创建:mkvirtualenv 虚拟环境名称 -p python的路径
删除:rmvirtualenv 虚拟环境名称
(注意:创建的虚拟环境放在用户目录下的Envs中)
进入:workon 虚拟环境名称
退出:deactivate
1.4 pip常用命令
pip install xxx:安装xxx依赖包
pip list:查看所有依赖包
pip freeze:查看虚拟环境新安装的包
pip uninstall xxx :卸载xxx包
1.5 导出虚拟环境的包到文件:
pip freeze > requirements.txt
1.6 将文件中的所有包导入到虚拟环境:
pip install -r requirements.txt
Linux虚拟环境
1.安装virtualenv
virtualenv 是一个创建隔绝的Python环境的工具。virtualenv创建一个包含所有必要的可执行文件的文件夹,用来使用Python工程所需的包。
sudo pip install virtualenv
安装完成以后,可以使用命令快速的创建、激活虚拟环境。
cd my_project # 进入到工程的工作目录
virtualenv test # 创建虚拟环境,并命名为test.此时会在my_project下多出一个test的文件夹
source test/bin/activate # 激活虚拟环境。此时,如果使用pip install安装的插件,都会被安装到当前虚拟环境
pip install flask # 测试安装flask. flask会被安装到当前虚拟环境,而不是全局环境
2.安装virtualenvwrapper
安装virtualenv以后,已经可以创建和激活虚拟环境了,但是使用起来却不是那么的方便。我们可以在安装一个virtualenvwrapper工具,它可以更加方便的帮我们管理虚拟环境。
sudo pip install virtualenvwrapper
安装完成以后,在~/.bashrc文件下添加以下内容:
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
export WORKON_HOME=~/.envs
source /usr/local/bin/virtualenvwrapper.sh
保存以后,再执行以下指令:
source ~/.bashrc
下面我们就可以很方便的管理虚拟环境了。
mkvirtualenv test # 创建并切换到test虚拟环境
deactivate # 离开test虚拟环境
rmvirtualenv test # 删除test虚拟环境
workon demo # 切换到demo虚拟环境
用原生的python安装使用虚拟环境
-
安装 virtualenv 和 virtualenvwrapper
- 命令:
pip install virtualenv
pip install virtualenvwrapper
, 安装这个包的时候,可能会出错,那么需要执行pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple pbr
, 然后在安装
- 命令:
-
在家目录下面创建一个 名称为 .ENVS 的 隐藏的目录,用来存放 所有 虚拟环境的 第三方的包
-
在 家目录中 编辑 .bashrc 文件, 这个是文件是系统配置文件,用户登录会自动加载这个文件. 配置的写法,如下
# 使虚拟环境中的解析器是 python3, 如果不指定, 虚拟环境使用的是python2 的 export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3 #(which python) # 指定 虚拟环境的 存放目录 export WORKON_HOME=~/.ENVS # 加载 管理虚拟环境的 脚本 source /usr/local/bin/virtualenvwrapper.sh #查看路径(which .sh)
-
重新加载 .bashrc 配置文件, 命令
source ~/.bashrc
管理虚拟环境的命令
- 查看虚拟环境: workon
- 新增虚拟环境: mkvirtualenv demo
- 进入虚拟环境: workon demo
- 退出虚拟环境: deactivate
- 删除虚拟环境: rmvirtualenv demo
conda管理虚拟环境的命令
- 显示所有的虚拟环境:
conda env list
- 创建虚拟环境:
conda create -n 虚拟环境名称
- 进入虚拟环境
conda activate
: 默认进入 base 虚拟环境conda activate 虚拟环境
: 进入 指定的虚拟环境
- 退出虚拟环境:
conda deactivate
- 删除虚拟环境:
conda remove -n 虚拟环境名称 --all
- 取消默认进入是虚拟环境:
conda config --set auto_activate_base false