Anaconda 可以用来管理Python所用的包和环境,它附带了 conda、Python 和 150 多个科学包及其依赖项。Anaconda 能让你在数据科学的工作中轻松安装经常使用的程序包。你还将使用它创建虚拟环境,以便更轻松地处理多个项目。Anaconda 简化了工作流程,并且解决了多个包和 Python 版本之间遇到的大量问题。
1. 安装Anaconda
Anaconda 可用于 Windows、Mac OS X 和 Linux。可以在 https://www.anaconda.com/download/ 上找到安装程序和安装说明。
如果计算机上已经安装了Python,这不会有任何影响。实际上,脚本和程序使用的默认 Python 是 Anaconda 附带的 Python。
Windows 上,会随 Anaconda 一起安装一批应用程序:
- Anaconda Navigator,它是用于管理环境和包的 GUI
- Anaconda Prompt 终端,它可让你使用命令行界面来管理环境和包
- Spyder,它是面向科学开发的 IDE
2. 管理包
- 要安装包,在终端中键入:
conda install package_name
- 可以同时安装多个包,例如:
conda install numpy scipy pandas
- Conda 会自动安装依赖项。
- 卸载包使用
conda remove package_name
- 更新包:
conda update package_name
- 更新环境中所有的包:
conda update --all
- 列出已经安装的包:
conda list
- 不知道要找的包的确切名称,可以使用
conda search search_term
进行搜索。
例如我想安装 Beautiful Soup,但不知到包的确切名称,可以使用:conda search beautifulsoup
。
3. 环境管理
- 创建环境使用:
conda create -n env_name list_of_packages
。
例如,要创建名为 my_env 的环境并在其中安装 numpy,键入conda create -n my_env numpy
。 - 创建环境时,可以指定Python版本。例如:
conda create -n py3 python=3
或conda create -n py2 python=2
,这将分别安装 Python 3 或 Python 2 的最新版本。 - 进入环境:
source activate my_env
- 离开环境:
source deactivate
4. 保存和加载环境
共享环境这项功能确实很有用,它能让其他人安装你的代码时使用的所有包,确保了安装代码时包的版本正确性。
-
保存环境:
conda env export > environment.yaml
这条命令将包保存为 YAML格式的文件,其中
conda env export
输出环境中的所有包(包括 Python 版本)。此YAML文件可以随代码一起共享,这样其他人就能够用于创建和你项目相同的环境。
通过环境文件加载环境,使用
conda env create -f environment.yaml
。列出你创建过的环境:
conda env list
,默认的环境名为root
。删除指定的环境:
conda env remove -n env_name
Tips
-
为了让 Python 2 和 Python 3 具有独立的环境,可以使用
conda create -n py2 python=2
和conda create -n py3 python=3
创建两个独立的环境。现在每个 Python 版本都有一个通用环境。还可以为从事的每个项目创建独立的环境,这对于与数据不相关的项目(例如使用 Flask 开发的 Web 应用)很有用。
在 GitHub 上共享代码时,最好将创建环境的文件包含在代码库中。这能让其他人更轻松地安装你的代码。
对于不使用 conda 的用户,可以使用pip freeze > requirements.txt
命令(在此处了解详情)导出 python 环境文件requirements.txt。同样的,可以使用pip install -r requirements.txt
导入python包。