凤患更 发表于 5 天前

Python Conda的基本认识整理

Conda 是一个强大的包管理器和环境管理器,主要用于数据科学、机器学习和 Python 开发。它能帮你解决“依赖冲突”问题(比如项目 A 需要 Python 3.8 + TensorFlow 1.x,而项目 B 需要 Python 3.10 + TensorFlow 2.x),让它们在同一个电脑上互不干扰地运行。
Conda 的核心使用指南,涵盖从安装到日常开发的全流程:

[*]安装与初始化
选择版本:
Anaconda: 全家桶,预装了 1500+ 个科学计算包(如 NumPy, Pandas, Jupyter),适合新手,但占用空间大(约 3-5GB)。
Miniconda (推荐): 轻量版,只包含 Conda、Python 和少量依赖。适合进阶用户,按需安装包,节省空间。
下载: 访问 Anaconda 官网 或国内镜像(如清华源)下载。
安装后初始化: 安装完成后,重启终端。如果 conda 命令不可用,运行:
conda init
# 然后重启终端或运行 source ~/.zshrc (Mac/Linux) / 关闭重开 PowerShell (Windows)
[*]核心功能一:环境管理 (Environment)
这是 Conda 最强大的功能。每个项目都应该有一个独立的虚拟环境。
操作命令说明查看环境conda env list 或 conda info --envs列出所有环境,当前激活的环境前会有 * 号创建环境conda create -npython=例如:conda create -n myproject python=3.9激活环境conda activate 进入该环境,终端提示符前会显示 (myproject)退出环境conda deactivate返回基础环境 (base)删除环境conda remove -n--all彻底删除某个环境及其所有包克隆环境conda create -n new_env --clone old_env复制一个现有环境(用于备份或实验)实战示例:
# 1. 创建一个名为 'dl_env' 的环境,指定 Python 3.10
conda create -n dl_env python=3.10

# 2. 激活它
conda activate dl_env

# 3. 现在在这个环境里安装的包不会影响其他项目
# 4. 用完退出
conda deactivate
[*]核心功能二:包管理 (Package)
在激活环境后 (conda activate ),使用以下命令安装包。
操作命令说明搜索包conda search 查找包的可用版本安装包conda install 例如:conda install numpy pandas指定版本安装conda install =例如:conda install tensorflow=2.10.0更新包conda update 更新到最新兼容版本更新所有包conda upgrade --all更新当前环境中所有包卸载包conda remove 删除包清理缓存conda clean --all删除未使用的包和缓存,释放空间Conda vs Pip:
优先使用 conda install,因为它能处理非 Python 依赖(如 C/C++ 库、CUDA 工具包)。
如果 Conda 找不到某个包,再使用 pip install。注意:在 Conda 环境中使用 pip 时,确保先安装了 pip (conda install pip)。

[*]环境导出与复现 (协作必备)
当你需要在另一台电脑或服务器上复现完全相同的环境时:
导出环境配置:
# 在当前激活的环境中运行
conda env export > environment.yml这会生成一个 environment.yml 文件,包含所有包及其精确版本号。
从文件创建环境:
# 在新机器上运行
conda env create -f environment.yml
[*]加速配置 (中国大陆用户必看)
默认源在国外,下载速度极慢。建议配置清华源或中科大源。
一次性配置命令 (推荐):
# 添加清华源
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/menpo
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch

# 显示源地址(可选,方便调试)
conda config --set show_channel_urls yes配置完成后,再次安装包速度会飞快。

[*]常用工作流示例
假设你要开始一个新的深度学习项目:
# 1. 创建环境 (Python 3.9)
conda create -n my_dl_project python=3.9

# 2. 激活环境
conda activate my_dl_project

# 3. 安装 PyTorch (以 CPU 版为例,GPU 版需去官网查对应命令)
conda install pytorch torchvision torchaudio cpuonly -c pytorch

# 4. 安装其他数据科学包
conda install jupyter matplotlib scikit-learn pandas

# 5. 启动 Jupyter 开始写代码
jupyter notebook

# ... 开发完成后 ...

# 6. 导出环境以便分享
conda env export > environment.yml

# 7. 退出环境
conda deactivate常见问题
Q: conda 命令找不到?
A: 运行 conda init 并重启终端。如果是 Windows,可能需要以管理员身份运行一次。
Q: 安装报错 Solving environment: failed?
A: 依赖冲突。尝试创建一个新环境而不是在旧环境里安装;或者使用 conda install --strict-channel-priority。
Q: 如何删除 base 环境里的包?
A: 尽量避免在 base 环境里安装项目依赖。最好为每个项目创建独立环境。

来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
页: [1]
查看完整版本: Python Conda的基本认识整理