Anaconda入门
1 Anaconda 介绍
Anaconda®是一个包管理器,一个环境管理器,一个Python/R数据科学发行版,以及超过7500个开源包的集合。Anaconda是免费且易于安装的,它提供免费的社区支持。
2 Anaconda 下载
Anaconda主要包括个人版(Individual Edition)、商业版(Commercial Edition)、团队版(Team Edition)和企业版(Enterprise Edition)
3 安装Anaconda
Anaconda还有一个只包含python、conda及其相关依赖包的精简版(Miniconda)
当满足以下几种情况时,你可以考虑使用Miniconda
- 不介意手动安装你期望使用的包
- 希望节省电脑的磁盘空间
- 希望以最快的速度开始上手python
4 配置环境变量
环境变量异常一般会导致conda not found
或conda is not recognized as an internal or external command
等错误,此时一般有两种解决方案:
- 重装Anaconda,并勾选添加环境变量选项
- 手动在系统中添加环境变量
Conda
Conda是一个运行在Windows、macOS和Linux上的开源包管理系统和环境管理系统。
Conda可以快速安装、运行和更新包及其依赖项。Conda很容易在本地计算机上创建、保存、加载和切换环境。它是为Python程序创建的,但它可以打包和分发任何语言的软件。
Conda主要功能
- 创建新的conda环境
- 在现有的conda环境中安装和更新包
- 查询和搜索Anaconda包索引和当前的Anaconda安装
1 管理虚拟环境
虚拟环境是一种工具,通过为不同的项目创建独立的空间(其中包含每个项目的依赖项),有助于将不同项目所需的依赖项分开。
用户可以使用Pipenv或Poetry等工具之一创建虚拟环境,或者使用conda虚拟环境。Pipenv和Poetry是基于Python的内置venv库,而conda有自己的底层虚拟环境概念(Python本身也是conda环境中的依赖项)。
# 创建名为snowflakes的环境,并配置包biopython
conda create --name snowflakes biopython
# 创建名为snakes的环境,并指定python版本
conda create --name snakes python=3.9
# 创建虚拟环境,并指定python版本和多个包
conda create -n myenv python=3.6 scipy=0.15.0 astroid babel
1.1 activate
# 激活名为snowflakes的环境
conda activate snowflakes
1.2 切换环境
# 取消当前环境的激活
conda deactivate
# 激活另一个环境
conda activate snakes
1.3 卸载环境
# 删除指定的整个环境
conda remove --name ENVNAME --all
1.4 关于环境总结
# 查看所有已有环境
conda info --envs
# 设置环境变量
conda env config vars set my_var=value
# 查看环境历史版本
conda list --revisions
# 环境历史版本回滚
conda install --revision=REVNUM
2 管理包
# 查看当前环境所有已安装包
conda list
# 查看指定环境下的所有已安装包
conda list --name ENVNAME
查看包之间的依赖关系
conda info package_name
列出特定包的依赖项conda info
查看所有包的缓存位置- 每个包都有对应的
~anaconda/pkgs/package_name/info/index.json
- 通过
grep package_name ~/anaconda/pkgs/*/info/index.json
可以找到依赖于某一特定包的其他所有包
2.1 安装第三方包
# 安装第三方包并指定版本号
conda install PKGNAME==3.1.4
# 安装第三方包并指定多个版本号
conda install "PKGNAME[version='3.1.2|3.1.4']"
# 安装第三方包并指定版本号范围
conda install "PKGNAME>2.5,<3.2"
# 安装包时默认yes,省心的小细节
conda install --yes PKG1 PKG2
conda update vs conda install
- conda update 是升级到最新的兼容版本
- conda update 默认是升级到相同的主版本号下的最高版本
- conda install 可以指定为任意已有的版本
- conda install 默认是安装最高版本
2.2 卸载第三方包
# 清除未使用缓存文件(包括未使用包)
conda clean --all
# 卸载指定环境下的第三方包
conda uninstall PKGNAME --name ENVNAME
2.3 查看环境包信息
# 在当前环境搜索包
conda search PKGNAME
# 在当前环境搜索包并查看详情
conda search PKGNAME --info
3 导入导出环境
# 复制环境
conda create --clone ENVNAME --name NEWENV
# 导出环境为yml文件
conda env export --name ENVNAME > envname.yml
# 导入yml文件创建环境
conda env create --file envname.yml
# 向当前环境导入额外的包
conda list --explicit > pkgs.txt
# 向新建环境导入额外的包
conda create --name NEWENV --file pkgs.txt
4 与 JetBrians Pycharm 连接
5 Anaconda应用
5.1 Anaconda Prompt
Windows独有的终端命令输入窗口 对于Linux或者Mac系统来说,可以使用自有的终端替代
5.2 Anaconda Navigtor
anaconda自带的GUI(图形用户界面)
- 能够进行环境的管理
- 能够进行包的管理
- 功能基本和Conda是一致的
- 只不过一个是命令行操作,一个是GUI
5.3 Spyder
Spyder是一个免费的开源科学环境,使用Python编写,由科学家、工程师和数据分析师设计。它独特地结合了综合开发工具的高级编辑、分析、调试和分析功能,以及科学包的数据探索、交互执行、深度检查和漂亮的可视化功能。 Spyder官方文档
5.4 Jupyter Notebook
Jupyter Notebook App(原名IPython Notebook)是一个运行在浏览器中的应服务器-客户端应用程序,允许通过网络浏览器编辑和运行笔记本文件。可以在不需要上网的本地桌面执行(如本文档所述),也可以安装在远程服务器上并通过互联网访问。
5.5 JupyterLab
JupyterLab是Jupyter项目的下一代基于web的用户界面。 JupyterLab能够以灵活、集成和可扩展的方式处理文档和活动,如Jupyter笔记本、文本编辑器、终端和自定义组件。
5.6 Qtconsole
Qt控制台是类似于IPython终端的GUI应用程序。但是,它提供了许多增强功能,这些增强功能在基于文本的IPython终端中不可用。增强功能包括内联图形,带有语法高亮显示的多行编辑,图形化调用提示等。Qt控制台可以使用任何Jupyter内核,默认为IPython内核。 Qtconsole官方文档
5.7 VS Code
Visual Studio Code是一款轻量级但功能强大的源代码编辑器,可以在桌面上运行,适用于Windows、macOS和Linux。它内置了对JavaScript、TypeScript和Node.js的支持,并拥有丰富的扩展生态系统用于支持其他语言(如c++、c#、Java、Python、PHP、Go)和运行环境(如. net和Unity)。 VS Code官方文档
5.8 Glueviz
Glue是一个Python库,用于探索相关数据集内部和之间的关系。其主要特点包括:
- 统计绘图。用户可以创建数据的散点图、直方图和(2D和3D)图像。
- 灵活的跨数据链接。Glue使用存在于不同数据集之间的逻辑链接来覆盖不同数据的可视化,并跨数据集传导选择。
- 完整的脚本功能。Glue是用Python编写的,并构建在它的标准科学库之上
5.9 Orange3
5.10 Rstudio
一个用于R和Python的集成开发环境,具有控制台、支持直接代码执行的语法高亮编辑器,以及用于绘图、历史记录、调试和工作空间管理的工具。
其他补充
1 常见问题
https://docs.anaconda.com/anaconda/user-guide/troubleshooting/