Conda
Conda 是一个多语言的 环境管理 和 包管理 器
Conda 会创建一些互相隔离的虚拟环境,可以激活不同的虚拟环境并在其中安装软件包,这避免了全局安装导致的环境冲突。虚拟环境本身在系统中是全局存储的,因此可以在不同的项目中复用相同的环境。
miniforge
Section titled “miniforge”Conda 有多种实现,比如 Miniforge 和 Anaconda,个人更推荐使用前者
- 优势
- 默认提供了更快速的包管理器
mamba,兼容所有常用的conda命令。当然conda在 Miniforge 里也是可用的 - 默认使用
conda-forge渠道下载,这是社区维护的包渠道,包数量更多、包更新更及时、平台支持更丰富,且完全不用担心许可协议的问题 base环境非常干净,只有包管理程序运行所需的组件
- 默认提供了更快速的包管理器
- 劣势
- 默认不安装
Anaconda Navigator,无法以可视化的方式使用包管理器
- 默认不安装
另外 pixi 也是一个基于 Conda 生态的环境管理器,采用了和 Conda 完全不同的架构,用户体验更好。如果只是需要利用 Conda 生态的话,非常建议尝试一下。
不建议用 scoop 安装。推荐使用 官方的安装脚本/程序。
Windows 版本的安装程序会提供一个图形界面,按照指示安装即可。可以修改安装路径,其余选项使用默认的就行
初始化和设置
Section titled “初始化和设置”Shell 集成
Section titled “Shell 集成”Conda 通过修改 PATH 来激活不同的虚拟环境,因此需要与 Shell 集成后才能正常使用。
在 Windows 上使用默认选项安装完 Miniforge 后应该会有一个快捷方式,按下 win 后输入 miniforge 就能找到。该快捷方式会启动一个激活了 base 环境的 Shell,输入以下命令即可与 Shell 集成
# conda 的 powershell 集成conda init powershell# conda 的 bash 集成conda init bash# mamba 的 shell 集成mamba shell init::tip[找不到快捷方式]
如果没有这个快捷方式,那么可以使用以下命令,效果是一样的
path\to\miniforge3\condabin\conda.bat init powershellpath\to\miniforge3\condabin\mamba.bat shell init:::
启用 shell 集成后,shell 的启动文件中会添加一些命令。此后从任何地方打开的 shell 都可以使用 conda / mamba 命令了。
conda 和 mamba 二者只需集成一个,选择喜欢的那个就行。
重启 Shell 并测试是否成功
conda --versionmamba --version# 禁止自动激活 basemamba config set auto_activate_base false# 如果使用了别的 prompt 美化工具,可以禁止 conda 修改 promptmamba config set changeps1 false# 列出包时显示 urlmamba config set show_channel_urls true为了让 VSCode 识别到 Conda 环境,可能需要修改一些编辑器的设置。
打开 VSCode,按下 ctrl + ,,然后输入 conda 会看到一个叫 Python: Conda Path 的设置,在里面填写 conda 可执行文件的路径。你可以在激活了 base 环境的 shell 里运行 where.exe conda 来获取路径。
或者可以直接修改 VSCode 的 settings.json 文件
{ "python.condaPath": "path\\to\\miniforge3\\condabin\\conda.bat"}后文统一使用 mamba。对于常用的命令,conda 和 mamba 用法几乎完全相同
# 列出创建的环境mamba env list# 创建名为 example 的新环境,并带有 python 3.12 运行时mamba create -n example python=3.12# 激活 example 环境mamba activate example# 在激活的环境中安装包mamba install ipykernel numpy matplotlib pandas# 在激活的环境中移除包mamba remove pandas# 升级 mamba 自身mamba update -n base -c conda-forge mamba