目录
- 什么是 Anaconda?为什么选择它?
- 安装与环境准备
- 核心概念:Conda vs. Pip
- 日常使用:常用命令详解
- 1 环境管理
- 2 包管理
- 3 在不同环境中工作
- 使用 Jupyter Notebook / Lab
- 常见问题与最佳实践
什么是 Anaconda?为什么选择它?
Anaconda 是一个免费、开源的 Python 和 R 语言的发行版,由 Quantopology 公司创建,它不仅仅是一个 Python 解释器,而是一个数据科学生态系统。

Anaconda 的核心优势:
- 环境管理: 这是 Anaconda 最重要的功能,它允许你创建多个独立的、隔离的 Python 环境,每个环境可以拥有不同版本的 Python 和不同的包集合,完美解决了项目依赖冲突的问题(项目A需要 NumPy 1.20,而项目B需要 NumPy 1.18)。
- 包管理: 它自带了
conda包管理器,conda可以高效地安装、更新、卸载 Python 包以及非 Python 的依赖(如 C/C++ 库)。conda甚至可以处理不同操作系统(Windows, macOS, Linux)之间的依赖差异。 - 预装了常用库: Anaconda 附带了超过 250 个最流行的数据科学、机器学习和科学计算库(如 NumPy, Pandas, Matplotlib, Scikit-learn, Jupyter 等),开箱即用,省去了大量安装和配置的时间。
- 图形化界面: 提供 Anaconda Navigator,一个图形化的桌面应用程序,让你无需记忆命令即可管理环境、包和启动应用(如 Jupyter Notebook)。
一句话总结: 如果你打算做数据科学、机器学习,或者你的项目有复杂的依赖关系,Anaconda 是你的最佳选择,因为它为你处理好了环境隔离和依赖管理的痛点。
安装与环境准备
安装步骤
- 下载: 访问 Anaconda 官网 下载适合你操作系统的安装包(推荐 Python 3.x 版本)。
- 安装:
- Windows: 双击安装包,按照提示进行。关键一步: 勾选 "Add Anaconda to my PATH environment variable"(将 Anaconda 添加到系统环境变量),这能让你在命令行中直接使用
conda和python命令。 - macOS: 打开下载的
.pkg文件,同样按照提示安装,安装完成后,Anaconda 会被安装在/Users/你的用户名/opt/anaconda3目录下。
- Windows: 双击安装包,按照提示进行。关键一步: 勾选 "Add Anaconda to my PATH environment variable"(将 Anaconda 添加到系统环境变量),这能让你在命令行中直接使用
- 验证安装:
- 打开一个新的终端(在 Windows 上是 PowerShell 或 CMD,在 macOS 上是 Terminal)。
- 输入以下命令,如果能看到版本号,说明安装成功:
conda --version python --version
创建第一个环境
强烈建议不要在系统自带的 base 环境中进行项目开发。base 环境是一个全局环境,用于管理 Anaconda 自身的工具。
我们来为你的第一个数据科学项目创建一个独立的环境。

# 创建一个名为 my_ds_project 的环境,指定 Python 版本为 3.9 conda create --name my_ds_project python=3.9
命令执行后,conda 会列出将要安装的包,并询问你是否确认 [y/n],输入 y 并回车即可。
核心概念:Conda vs. Pip
很多初学者会混淆 conda 和 pip,它们都是 Python 的包管理器,但有本质区别。
| 特性 | conda |
pip |
|---|---|---|
| 来源 | Anaconda 发行版自带 | Python 官方包管理器 |
| 管理范围 | Python 和非 Python 包 (如 C 库) | 仅 Python 包 |
| 依赖解决 | 非常强大,能自动解决复杂的跨语言依赖关系 | 相对较弱,有时需要手动处理编译问题 |
| 环境管理 | 是,conda 的核心功能之一 |
否,需要配合 virtualenv 等工具使用 |
| 速度 | 通常更快,因为使用本地缓存和并行下载 | 网络速度依赖 PyPI |
使用建议:
- 优先使用
conda: 在使用 Anaconda 的环境下,始终优先使用conda install <package>,它能更好地处理依赖,避免很多编译错误。 pip作为补充: 如果某个包在conda的官方渠道中找不到(比如一些非常新的、小众的库),再使用pip install <package>。- 不要混用: 尽量避免在同一个环境中混用
conda和pip安装包,这可能会导致环境不一致,如果必须用pip,最好在conda安装完所有核心依赖后再使用。
日常使用:常用命令详解
1 环境管理
# 查看所有已创建的环境 conda env list # 激活 (切换到) 指定环境 # Windows: conda activate my_ds_project # macOS / Linux: source activate my_ds_project # (新版本的 Anaconda 在 macOS/Linux 上也支持 `conda activate my_ds_project`) # 查看当前激活的环境 conda info --envs # 退出当前环境,返回 base 环境 conda deactivate # 复制一个环境(从 my_ds_project 复制到 my_ds_project_v2) conda create --name my_ds_project_v2 --clone my_ds_project # 删除一个环境 conda env remove --name my_ds_project_v2
2 包管理
确保你已激活了目标环境!

# 安装包 (例如安装 pandas) conda install pandas # 安装指定版本的包 conda install numpy=1.21.0 # 从特定频道安装包 (从 conda-forge 安装最新的 scikit-learn) conda install -c conda-forge scikit-learn # 更新一个包 conda update pandas # 更新所有包到最新版本 (谨慎使用) conda update --all # 卸载包 conda uninstall pandas # 查看当前环境中已安装的包 conda list # 查找某个包的信息 conda search numpy
3 在不同环境中工作
这是工作流的核心。
-
项目A需要 TensorFlow 2.6 和 Python 3.8:
conda create --name tf_project python=3.8 conda activate tf_project conda install tensorflow=2.6
-
项目B需要 PyTorch 1.12 和 Python 3.9:
conda create --name pt_project python=3.9 conda activate pt_project conda install pytorch torchvision torchaudio -c pytorch
你可以随时在 tf_project 和 pt_project 之间切换,它们互不干扰,当你在 tf_project 中时,import tensorflow 会加载 2.6 版本;切换到 pt_project 时,import torch 会加载 PyTorch。
使用 Jupyter Notebook / Lab
Jupyter 是进行交互式数据分析和可视化的强大工具。
-
启动:
-
命令行方式: 在激活的环境中,直接输入:
# 启动经典 Notebook jupyter notebook # 或启动更现代的 Jupyter Lab (推荐) jupyter lab
-
图形化界面: 打开 Anaconda Navigator,在左侧选择 "Environments",激活你的环境,然后在右侧的 "Applications" 标签页下点击 "Launch" Jupyter Notebook 或 Jupyter Lab。
-
-
使用:
- 启动后,浏览器会自动打开一个文件管理界面。
- 你可以创建新的
.ipynb文件,在单元格中编写代码并运行。 - 你还可以安装其他内核,以便在 Jupyter 中使用不同环境中的 Python,要让 Jupyter Notebook 能识别
my_ds_project环境:# 确保在 base 环境下或已经安装了 ipykernel conda install ipykernel # 将你的环境注册为一个 Jupyter 内核 python -m ipykernel install --user --name=my_ds_project --display-name="Python (my_ds_project)"
之后,在 Jupyter Notebook 的 "New" 下拉菜单中,你就能看到 "Python (my_ds_project)" 选项。
常见问题与最佳实践
常见问题
-
Q:
conda命令很慢,如何加速?- A: 可以添加国内镜像源,创建或编辑
~/.condarc文件(Windows 在C:\Users\你的用户名\.condarc),添加以下内容:channels: - defaults show_channel_urls: true default_channels: - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2 custom_channels: conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
- A: 可以添加国内镜像源,创建或编辑
-
Q: 提示 "Solving environment failed" 或 "UnsatisfiableError" 怎么办?
- A: 这通常意味着你要求安装的包版本组合存在冲突,解决方法:
- 升级
conda自身:conda update conda - 尝试安装一个更新的、兼容的包版本。
- 如果是
pip安装的包引起的冲突,尝试在干净的环境中重新安装。
- 升级
- A: 这通常意味着你要求安装的包版本组合存在冲突,解决方法:
最佳实践
-
一个环境一个项目: 为每个独立的项目创建一个专属的环境。
-
使用
requirements.txt或environment.yml分享环境:- 当你完成项目开发后,可以导出当前环境的所有依赖,以便与他人分享或在其他机器上复现。
- 导出为
environment.yml文件 (推荐):conda env export > environment.yml
这个文件会包含 Python 版本和所有包的精确版本,别人可以通过以下命令一键重建你的环境:
conda env create -f environment.yml
- 导出为
requirements.txt文件 (供pip使用):conda list --export > requirements.txt
注意:这个文件不包含 Python 版本信息。
-
保持
base环境干净: 只在base环境中管理conda、navigator等工具本身,不安装项目相关的包。
| 任务 | 命令 |
|---|---|
| 创建新环境 | conda create --name my_env python=3.9 |
| 激活环境 | conda activate my_env |
| 安装包 | conda install pandas |
| 查看环境列表 | conda env list |
| 退出环境 | conda deactivate |
| 导出环境配置 | conda env export > environment.yml |
| 从文件创建环境 | conda env create -f environment.yml |
掌握 Anaconda 的核心就是掌握环境隔离和依赖管理,一开始可能会觉得命令繁琐,但一旦你习惯了这种工作流,它将极大地提升你的开发效率和项目稳定性,让你能专注于代码本身,而不是被环境问题所困扰。
