核心理念
在 Linux 上,我们通常会遵循以下原则来管理 Python 环境:

- 系统 Python 保持干净:不要使用操作系统自带的 Python(如
/usr/bin/python3)来安装第三方包,这个 Python 版本通常被系统工具依赖,修改它可能会导致系统不稳定。 - 使用虚拟环境:为每个项目创建一个独立的、隔离的 Python 环境,这样可以避免不同项目之间的包版本冲突,并且能精确控制每个项目依赖的包。
- 使用包管理器:系统级的工具(如
apt)只用于安装 Python 解释器本身,而项目依赖则通过pip在虚拟环境中管理。
最推荐的方式(虚拟环境 + VS Code)
这是目前最流行、最灵活、最适合初学者和开发者的组合,它结合了轻量级的虚拟环境管理和功能强大的现代编辑器。
步骤 1:安装 Python 和 pip
确保你的系统上安装了 Python 3 和 pip(Python 的包安装器),打开终端,运行以下命令:
# 更新软件包列表 sudo apt update # 安装 Python 3, pip, 和 venv (Python 的虚拟环境模块) sudo apt install python3 python3-pip python3-venv
验证安装:
# 检查 Python 版本 python3 --version # 应该输出类似 Python 3.10.6 的信息 # 检查 pip 版本 pip3 --version # 应该输出 pip 的版本信息
步骤 2:创建并激活虚拟环境
为你即将开始的项目创建一个目录,并在其中创建虚拟环境。

# 1. 创建项目文件夹 mkdir my_python_project cd my_python_project # 2. 创建虚拟环境 # 我们通常将虚拟环境命名为 'venv' 或 '.venv' python3 -m venv venv # 3. 激活虚拟环境 source venv/bin/activate
激活后,你会看到终端提示符前面出现了 (venv),这表示你当前正在虚拟环境中,所有后续通过 pip 安装的包都会被安装到这个 venv 目录下,而不会影响系统或其他项目。
# 现在在这个环境下安装包 pip install requests numpy # 安装完成后,可以查看已安装的包 pip list
要退出虚拟环境,只需输入:
deactivate
步骤 3:安装和配置 VS Code
-
安装 VS Code: 如果你还没有安装,可以通过以下方式安装:
# 下载并添加微软的 GPG 密钥 wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg sudo install -o root -g root -m 644 packages.microsoft.gpg /etc/apt/trusted.gpg.d/ echo "deb [arch=amd64,arm64,armhf signed-by=/etc/apt/trusted.gpg.d/packages.microsoft.gpg] https://packages.microsoft.com/repos/code/ stable main" | sudo tee /etc/apt/sources.list.d/vscode.list # 更新并安装 sudo apt update sudo apt install code
-
安装 Python 扩展: 打开 VS Code,点击左侧活动栏的“扩展”图标(或按
Ctrl+Shift+X),搜索Python,由 Microsoft 发布的那个扩展,点击“安装”,这个扩展是 VS Code 进行 Python 开发的核心。
(图片来源网络,侵删) -
打开项目并选择解释器:
- 在 VS Code 中,通过
File > Open Folder...打开你刚才创建的my_python_project文件夹。 - 打开后,VS Code 通常会自动检测到
venv目录中的 Python 解释器,如果它没有自动检测,你可以手动选择:- 按下
Ctrl+Shift+P打开命令面板。 - 输入
Python: Select Interpreter。 - 在列表中选择
venv/bin/python3。
- 按下
一旦选择了正确的解释器,VS Code 底部状态栏会显示 Python 版本,并且智能提示、代码检查、调试等功能都会基于这个虚拟环境。
- 在 VS Code 中,通过
-
配置 VS Code 使用虚拟环境的 pip: 为了让 VS Code 在安装扩展时也使用虚拟环境中的
pip,建议在 VS Code 的设置中添加一项。- 按
Ctrl+,打开设置。 - 点击右上角的 图标,打开
settings.json文件。 - 添加以下配置:
{ "python.pipenvPath": "${workspaceFolder}/venv/bin/pip", "python.terminal.activateEnvironment": true } python.terminal.activateEnvironment: 这个设置会让你在 VS Code 中打开的终端自动激活虚拟环境,非常方便。
- 按
步骤 4:开始编码
你可以创建一个 .py 文件(app.py),开始编写你的代码,VS Code 会提供语法高亮、代码自动补全、错误检查等功能。
更高级的方式(Pyenv + Poetry)
对于需要频繁在不同 Python 版本间切换,或者希望更精细地管理项目依赖(包括开发依赖)的开发者来说,这是一个更强大的组合。
Pyenv:管理多个 Python 版本
pyenv 可以让你在同一台机器上轻松安装和切换多个 Python 版本。
-
安装依赖:
sudo apt update sudo apt install -y make build-essential libssl-dev zlib1g-dev \ libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm \ libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev
-
安装 Pyenv:
curl https://pyenv.run | bash
-
配置环境变量:
pyenv通过 shell 脚本来工作,你需要将其添加到你的 shell 配置文件中(~/.bashrc或~/.zshrc)。echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc echo 'eval "$(pyenv init -)"' >> ~/.bashrc
-
重启终端或运行
source ~/.bashrc使配置生效。 -
验证安装:
pyenv --version
-
安装 Python 版本:
# 安装最新的 Python 3.11 pyenv install 3.11.4 # 查看所有可安装的版本 pyenv install --list # 查看所有已安装的版本 pyenv versions
-
全局或局部设置 Python 版本:
# 设置全局默认版本(不推荐,仍然建议用虚拟环境) pyenv global 3.11.4 # 在当前目录下设置局部版本(推荐) cd /path/to/your/project pyenv local 3.11.4
当你使用
pyenv local设置后,每次进入这个目录,python和pip命令都会自动指向你指定的版本。
Poetry:管理项目依赖和虚拟环境
Poetry 是一个现代的 Python 项目管理工具,它集成了依赖管理和虚拟环境管理。
-
安装 Poetry:
curl -sSL https://install.python-poetry.org | python3 -
-
将 Poetry 添加到 PATH: 根据安装后的提示,通常需要将以下内容添加到你的 shell 配置文件中。
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc source ~/.bashrc
-
创建新项目:
# 进入你的项目目录 cd /path/to/your/project # Poetry 会自动检测 pyenv 设置的 Python 版本 # 并创建一个 pyenv virtualenv poetry new my-awesome-project # 或者,如果项目已存在 # poetry init
-
激活虚拟环境:
cd my-awesome-project poetry shell
激活后,终端提示符也会变成
(my-awesome-project)。 -
添加依赖:
# 添加生产环境依赖 poetry add requests # 添加开发环境依赖(如测试框架、代码格式化工具) poetry add --group dev pytest black
-
编写代码: Poetry 会自动配置 VS Code,当你安装了 Python 扩展后,它会自动识别 Poetry 创建的虚拟环境,你不需要做任何额外配置。
总结与对比
| 特性 | 方案一 (venv + VS Code) | 方案二 (Pyenv + Poetry) |
|---|---|---|
| 易用性 | 非常简单,是初学者的最佳选择。 | 概念稍多,但功能强大,适合有经验的开发者。 |
| Python版本管理 | 依赖系统 Python,版本单一。 | 非常强大,可在项目中自由切换任意 Python 版本。 |
| 依赖管理 | 使用 pip 和 requirements.txt,简单直接。 |
非常强大,使用 pyproject.toml 文件,统一管理生产和开发依赖。 |
| 虚拟环境 | 手动创建和激活 (venv, source)。 |
自动集成,通过 poetry shell 或 poetry run 管理。 |
| 编辑器集成 | VS Code 需要手动配置解释器。 | VS Code / PyCharm 等现代编辑器能完美自动识别。 |
| 适用场景 | 大多数 Web 开发、脚本、数据科学项目。 | 需要处理多版本 Python 的复杂项目、开源库开发、追求标准化的团队。 |
给新手的建议:
从 方案一 开始,它简单、直接,并且能让你快速上手 Python 开发,当你未来遇到需要管理多个 Python 版本的项目时,再学习 方案二 也不迟,这两个方案是目前 Linux Python 开发环境的主流和最佳实践。
