前端人的 Python、Conda 环境搭建

前言

许多 AI 相关的项目、游戏辅助工具都使用 Python 语言开发,迫使我开始接触 Python 的环境搭建。作为一个前端人,我已经对 Node.js、NVM、NPM 等工具再熟悉不过了,但搭建 Python 的过程中还是碰到了不少困难,在此记录一下,让和我一样的前端人能更快地理解 Python 的生态体系。

Python 生态

  • Python: Python 解释器和运行时环境,对应前端体系中的 Node.js,官网 www.python.org
  • Pip: Python 的包管理工具,对应前端体系中的 NPM,官网 pypi.org
  • Conda: 用于管理 Python 环境,对应前端体系中的 NVM,但又略有区别

NPM 在安装项目依赖时,会安装在项目的 node_modules 目录下,也就是局部安装,各个项目之间互相不影响,而 Pip 则是默认装在全局,这和前端的思维不一致。装在全局会造成多个项目的管理不便,各个项目之间依赖冲突、相同依赖的不同版本无法同时存在。

为了解决这个问题,Conda 就出现了,它可以创建完全隔离的多个不同的 Python 环境,每个环境可以指定不同的 Python 版本,每个环境所安装的依赖也相互隔离。

环境安装

为了搭建 Python 环境,新手往往会先想到安装 Python,但实际上 Conda 已经内置了 Python,我们 只需要安装一个 Conda,就完成环境安装了。

Conda 有三个发行的安装包,分别是 Anaconda、Miniconda、Miniforge,其中 Anaconda 最出名,它已经内置了数千个常用的科学计算依赖包,属于是开箱即用,但缺点是安装包体积达到了惊人的 912 MB。

Miniconda 就比较小巧了,它没有内置常用依赖,体积也降到了 85 MB,对于我这种需求不高的用户,显然更合适。

  1. 下载 Miniconda: https://docs.anaconda.com/miniconda/#latest-miniconda-installer-links
  2. 安装时有一步 Advanced Installation Options,建议选中 “Clear the package cache upon completion”,可以节省部分硬盘空间

修改软件源

和 NPM 一样,默认的国外软件源在国内是无法流畅使用的。我们需要在用户根目录(C:\Users\你的用户名)创建一个 .condarc 文件,输入以下内容来切换成国内源

1
2
3
4
5
6
7
8
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
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch

修改环境位置

如果你不想让以后安装的依赖占用 C 盘的空间,还需要提前修改环境位置,在上一步的 .condarc 文件中增加两行

1
2
envs_dirs:
- D:\dev\condaenvs

环境创建

在开始中搜索 “anaconda”,找到 “Anaconda Prompt (miniconda3)” 并打开,然后执行

1
conda create -n 环境名称 python=3.12 -y

替换命令中的环境名称为你定义的环境名称,替换命令中的 3.12 为你需要的 Python 版本

这样就完成环境的创建了,执行 conda env list 可以查看环境列表

环境切换

仍然是在 Anaconda Prompt 中执行

1
conda activate 环境名称

这样就切换到了对应的环境中

依赖安装

仍然是在 Anaconda Prompt 中执行

1
2
cd /d 项目目录
pip install -r requirements.txt

注意 -r 后跟项目依赖声明文件,有可能叫 requirements.txt,也有可能叫 requirements-prod.txt,之类的

安装好依赖后,就可以启动项目啦!具体如何启动可以参考项目的 README 文件。

在 bat 中切换 Conda 环境

有时候我们需要编写 bat 脚本来执行一些自动化任务(例如定时执行),这时我们会发现,由于脚本执行时没有切换到指定的 Conda 环境中,会报 Python 找不到的错误。怎样在 bat 脚本中切换 Conda 环境呢?

1
2
3
4
5
@echo off
cd /d 项目目录
call D:\dev\anaconda3\Scripts\activate.bat D:\dev\anaconda3
call conda activate 环境名称
python 项目主入口.py

替换命令中的 D:\dev\anaconda3 为你的 Conda 安装路径,替换最后一行命令为项目的启动命令

配置 PyCharm

如果你和我一样在用 PyCharm 开发工程,还需要在其中配置工程所使用的 Conda 环境

  1. 在 PyCharm 中打开工程
  2. 打开 文件-设置-项目-Python 解释器-添加解释器-添加本地解释器

  1. 选择 Conda 环境,选择 conda.exe 所在位置,然后选择刚才创建好的环境,然后确定

  1. 回到设置窗口选择刚刚添加好的解释器,大功告成

前端人的 Python、Conda 环境搭建

https://www.imaegoo.com/2024/python-conda-setup/

作者

iMaeGoo

发布于

2024-09-19

更新于

2024-09-20

许可协议

CC BY 4.0

评论

微信二维码