虚拟环境一览
以下文章来自大神转载
1. 认识 Anaconda
1.1 Anaconda 安装
首先有必要对 Anaconda、conda、pip、virtualenv 等这些有个认识,以及 Anaconda 在 Windows、MacOS、Linux 下的安装教程,参考:
- Anaconda介绍、安装及使用教程
- Python,Pycharm,Anaconda等的关系与安装过程~为初学者跳过各种坑
- 致Python初学者:Anaconda入门使用指南
- Windows下Anaconda的安装和简单使用
简单总结下:
- Anaconda 就是可以便捷获取包且对包能够进行管理,同时对环境可以统一管理的发行版本。Anaconda 包含了 conda、Python 在内的超过 180 个科学包及其依赖项。简单说,当在电脑上安装好 Anaconda 以后,就相当于安装好了 Python,还有一些常用的库,如 numpy,scrip,matplotlib 等库。
- conda 是包及其依赖项和环境的管理工具。
- pip 是用于安装和管理软件包的包管理器。
- virtualenv 是用于创建一个独立的 Python 环境的工具。
安装 Anaconda :点击 这里 下载对应自己想要安装的 python 版本的 Anaconda ,然后下一步下一步安装就行。
注意:因为 anaconda 是自带 Python 的,所以不需要自己再去下载安装 Python 了,当然,如果你已经安装了 Python 也不要紧,不会发生冲突的。
这里提下,下载的 Anaconda 和 Python 版本对应情况,图片来源网络:
解释一下上表,anaconda 在每次发布新版本的时候都会给 python3 和 python2 都发布一个包,版本号是一样的。假设你想安装
python3.6.5,就去下载anaconda3-5.2.0;假设你想安装python2.7.14,就去下载anaconda2-5.2.0。
在安装过程有遇到的问题和注意的地方,在这记录下:
(1)我的电脑就已经安装过 Python 环境并设置到了电脑的用户变量 PATH 中,但在安装 Anaconda 完毕之后,我的电脑只有这么一个菜单,如下:

不知道怎么回事,尝试卸载了再重装几次还是这样。然后按照 Python3学习壹——Anaconda+Pycharm环境搭建 作者的解决方式,删除了之前的 Python 环境变量再重装,但也不行,以及按照该文 关于安装Anaconda3各种各样的问题,吐血总结 的方式,进入 Anaconda 安装目录下的 CMD 中敲 python .\Lib\_nsis.py mkmenus 也没成。无奈之下,干脆卸载了 Python 再安装 Anaconda,也没解决这个问题。
最后,尝试把安装目录改为别的地方,竟然 ok 了。(注:之前一直选择的是和 Python安装目录的同一目录,莫非这个导致的?)
(2)假设 Anaconda 安装目录为 D:\Anaconda3 ,则把 D:\Anaconda3;、 D:\Anaconda3\Scripts;、 D:\Anaconda3\Library\bin;,把它们添加到 PATH 中。
1.2 源更改
使用 Anaconda 管理,安装 Python 库的时候默认是使用国外的源,这时候下载速度会很慢,国内的源下载速度要好很多。参考:
(1) pip 源更改
配置环境:Windows7 (64位),Python3.6
(1)临时使用
pip 后加参数:-i https://pypi.tuna.tsinghua.edu.cn/simple,例如:
1 | pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pandas |
(2)永久使用
Linux 下:
修改 ~/.pip/pip.conf (没有就创建一个), 修改 index-url至tuna,内容如下:
1 | [global] |
Windows 下:
在 Windows 文件管理器中,输入
%APPDATA%回车接着会定位到一个新的目录,在这个目录中新建一个 pip 文件夹,然后在 pip 文件夹中新建个 pip.ini 文件
最后再新建的 pip.ini 文件中输入一下内容:
1
2[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
(2) conda 源更改
在安装了 Anaconda 后,我们也可以使用 Anaconda 来进行 Python 库的安装,同样的也需要进行源的配置。
这个配置方法就很简单了,你只需要在配置了 Anaconda 的终端(Terminal)输入一下命令即可:
1 | conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ |
此时,目录 C:\Users<你的用户名> 下就会生成配置文件 .condarc,内容如下:
1 | channels: |
好了,源的更改到此就完成了。大家有兴趣可以去清华大学的 开源镜像站 看看,会有很多惊喜的。
查看当前配置信息 conda info,容如下,即修改成功,关注 channel URLs 字段内容:
1 | platform : win-32 |
2. conda 的包管理
Anaconda 为我们提供方便的包管理命令:conda,下面我们来看看都有哪些有用的命令。
1 | conda --v #验证conda已被安装 |
由于 conda 将 conda、python 等都视为 package,因此,完全可以使用 conda 来管理 conda 和 python 的版本,例如:
1 | conda update conda # 更新conda,保持conda最新 |
卸载 Anaconda:
1 | Linux 或 MacOS 下: rm -rf ~/anaconda3 |
当使用 conda install 无法进行安装时,可以使用 pip 进行安装,例如:see 包。
1 | pip install <package_name> |
另:当使用 conda install 无法进行安装时,可以考虑从 http://Anaconda.org 搜索要安装的包名,并获取安装包的命令,进行安装。
3. Anaconda 环境管理
关于 Anaconda 的环境重点说下。
(1)创建新环境: conda create --name <env_name> <package_names>
1 | <env_name> 即创建的环境名。建议以英文命名,且不加空格,名称两边不加尖括号“<>”。 |
注:假设创建的新环境为 py3(会在 Anaconda 安装目录下 env 文件夹下生产同名的文件夹 py3),activate py3 进入 py3 环境中,再运行命令:conda install tensorflow,则会安装 tensorflow 到 py3 此环境中,即下载的 TensorFlow 文件,存放在 D:\Anaconda3\envs\py3\Lib\site-packages 下。
(2)切换环境
① Linux 或 macOS 下:source activate <env_name>
② Windows 下:activate <env_name>
③ 提示
- 如果创建环境后安装Python时没有指定Python的版本,那么将会安装与Anaconda版本相同的Python版本,即如果安装Anaconda第2版,则会自动安装Python 2.x;如果安装Anaconda第3版,则会自动安装Python 3.x。
- 当成功切换环境之后,在该行行首将以“(env_name)”或“[env_name]”开头。其中,“env_name”为切换到的环境名。如:在macOS系统中执行
source active python2,即切换至名为“python2”的环境,则行首将会以(python2)开头。
(3)退出环境至root
① Linux 或 macOS 下:source deactivate
② Windows 下:deactivate
③ 提示:当执行退出当前环境,回到root环境命令后,原本行首以“(env_name)”或“[env_name]”开头的字符将不再显示。
(4)显示已创建环境:conda info --envs 或 conda env list
(5)复制环境:conda create --name <new_env_name> --clone <copied_env_name>
1 | 注意: |
(6) 删除环境:conda remove --name <env_name> --all
- 注意:
<env_name>为被删除环境的名称。环境名两边不加尖括号“<>”。
有了虚拟环境,在 PyCharm IDE 下就可以指定虚拟环境下的解析器,非常方便。具体做法是:File –> Default settings –> Default project –> project interpreter,接着点击 project interpreter 的右边的小齿轮,选择 add local ,选择 anaconda 文件路径下想要使用的虚拟环境下的 python.exe,接着 PyCharm 会更新解释器,导入模块等,要稍等一点时间。
注:在 PyCharm IDE 中安装库会自动下载到指定解析器所在的环境的<env-name>\Lib\site-packages 下。
另外:关于创建虚拟环境,如果你只是安装了 Python,官方自带创建虚拟环境功能,如创建名为 myenv 的虚拟环境 python -m venv myenv ;另外也可以通过安装 virtualenv 来创建虚拟环境,步骤如下:
首先安装
virtualenv:pip install virtualenv创建虚拟环境:
1
2
3$ mkdir myproject
$ cd myproject
$ virtualenv venv创建了一个名为
myproject的文件夹,然后这里边创建虚拟环境venv。参考:Anacodna之conda VS Virtualenv VS Python 3 venv 对比使用教程,创建虚拟环境
关于 pip 和 virtualenv 以及 conda 区别,可以这么理解:pip 是一个包管理器,virtualenv 是一个环境管理器,而 conda 就是它们俩的综合体。
4. 注意和总结
(1) 注意
在安装有多个 Python 环境情况下,比如除了单独的 Python,还有 Anaconda 环境,那么在 Windows 的 CMD 下使用 pip install <package>、conda install <package> 等命令到底使用的哪个环境呢?毕竟还是要清楚自己安装的库到底是安装在哪吧。
(1)查看 pip 命令来源哪个环境:pip --version 或 pip -V,可以看到如下:
1 | pip 9.0.1 from D: devInstall\ Anaconda3\ lib\ site-packages <python 3.6) |
如上表示来自 Anaconda 环境下的 pip,则使用 pip 安装的库安装在对应的 anaconda 环境下。
(2)使用:conda install <package> 表示安装在默认的 anaconda 环境下,如果想要安装到新建的虚拟环境,如 py3 ,则先切换到该虚拟环境 activate <env_name>(windows 下),然后使用 conda install 安装即可。
(3)查看 CMD 下使用的 python 命令来源哪个环境,python --version 或 python -V,比如可以看到:
1 | Python 3.6.4:: Anaconda, Inc. |
表明来源 Anaconda 环境。
5. 自己操作遗留的问题
按目录4里查看pip命令来源的环境如下
pip 24.0 from D:\anaconda\Lib\site-packages\pip (python 3.12)
说明是来自 Anaconda 环境下的 pip,则使用 pip 安装的库安装在对应的 anaconda 环境下,但是我查看一开始安装的python3.12也存在pip,感觉就是现在anaconda安装的pip被设为默认了,那么问题就来了,我怎么使用原来安装的python中的pip来为其和其所创建的虚拟环境安装库呢(这里”其”是指在anaconda之前安装的python3.12,其创建管理虚拟环境的方式一般采用venv)以上提到的对实现安装的python3.12创建管理虚拟环境的方法也要了解。下面给出具体的链接。
介绍管理四种管理虚拟环境的方法(主要看venv):https://blog.csdn.net/qq_42951560/article/details/124224972
venv 官方文档:https://docs.python.org/3/library/venv.html




