温馨提示×

Ubuntu上Python版本如何选择安装

小樊
40
2025-12-28 06:44:55
栏目: 编程语言

Ubuntu上Python版本选择与安装指南

一 版本选择建议

  • 优先选择Python 3.xPython 2已于2020年停止支持,除非维护遗留项目,不建议在新项目中使用。
  • 通用开发与追求新特性:选择最新稳定版(如 3.12.x),可获得更好的语法、性能与工具链支持。
  • 科学计算与数据分析:选择3.9–3.11,主流库(如NumPy、Pandas、Matplotlib)在这些版本上支持最成熟。
  • 机器学习与深度学习:选择3.8–3.11,如TensorFlowPyTorch对该区间的兼容性更好。
  • Web开发:选择3.8+(如Django、Flask、FastAPI均稳定运行)。
  • 嵌入式或低资源环境:考虑MicroPython(物联网)或PyPy(高性能 JIT,兼容3.9+)。
  • 系统与工具链:优先使用LTS(如20.04、22.04)。默认版本通常为:20.04 → 3.822.04 → 3.10。计算密集型任务可优先3.11+;若需进一步提升性能,可考虑PyPy

二 安装方式

  • 系统包管理器 APT(新手推荐)
    • 更新索引并安装默认 Python 3:
      sudo apt update && sudo apt install python3
    • 安装指定小版本(示例:3.10):
      sudo apt install python3.10
    • 验证:python3.10 --version
  • 第三方 PPA(获取更多版本)
    • 添加 deadsnakes PPA 并安装(示例:3.11):
      sudo apt install software-properties-common
      sudo add-apt-repository ppa:deadsnakes/ppa
      sudo apt update
      sudo apt install python3.11
  • 源码编译(自定义与性能优化)
    • 安装构建依赖:
      sudo apt install -y build-essential libssl-dev libffi-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev
    • 下载、配置、编译与安装(示例:3.12.0):
      wget https://www.python.org/ftp/python/3.12.0/Python-3.12.0.tgz
      tar -xf Python-3.12.0.tgz && cd Python-3.12.0
      ./configure --enable-optimizations
      make -j $(nproc)
      sudo make altinstall # 避免覆盖系统默认 python3
    • 验证:python3.12 --version
  • 版本管理工具 pyenv(多版本并存与切换)
    • 安装:curl https://pyenv.run | bash(按提示将 pyenv 加入 PATH)
    • 安装与切换版本:
      pyenv install 3.10.12
      pyenv global 3.10.12 # 全局默认
      pyenv local 3.8.18 # 仅当前项目生效(生成 .python-version)

三 切换与默认版本管理

  • 使用 update-alternatives 管理系统默认 python3(推荐)
    • 注册候选版本(示例:3.103.11):
      sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.10 1
      sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.11 2
    • 交互式选择:sudo update-alternatives --config python3
  • 如需将 python 命令也纳入管理(谨慎):
    sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 1
    sudo update-alternatives --config python
  • 注意:不要随意移除或替换系统自带的 python3,因为 apt 等系统工具依赖它。

四 虚拟环境与依赖管理

  • 使用 venv 隔离项目依赖(强烈推荐)
    • 创建(示例基于 3.10):python3.10 -m venv .venv
    • 激活:source .venv/bin/activate
    • 退出:deactivate
    • 在虚拟环境中使用 pip:pip install -r requirements.txt
  • 多项目多版本:结合 pyenv localvenv,为每个项目固定解释器与依赖。
  • 加速与镜像(可选):pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple。

五 常见问题与注意事项

  • 避免覆盖系统默认 python3;如需切换,请使用 update-alternatives,切勿删除系统包。
  • 安装前准备依赖:build-essential、libssl-dev、libffi-dev、zlib1g-dev、libbz2-dev、libreadline-dev、libsqlite3-dev 等。
  • 源码安装使用 make altinstall,避免替换 /usr/bin/python3。
  • 为关键项目使用虚拟环境,减少依赖冲突;定期用 pip list --outdated 与 pipdeptree 检查升级与依赖关系。
  • 迁移或升级前备份代码、requirements.txt 与数据库;涉及生产环境先在测试环境验证。

0