Ubuntu系统Python开发环境搭建详细教程
Ubuntu Python 开发环境搭建指南
想在 Ubuntu 上高效地写 Python 代码?一个干净、可控且强大的开发环境是第一步。这份指南将带你从零开始,搭建一个既专业又灵活的工作站,涵盖从基础安装到高级管理的方方面面。
免费影视、动漫、音乐、游戏、小说资源长期稳定更新! 👉 点此立即查看 👈
一 基础安装与版本管理
万事开头先更新。打开终端,执行以下命令来确保你的系统包列表是最新的,并升级所有可升级的软件包:
sudo apt update && sudo apt upgrade -y
接下来,安装 Python 开发的核心三件套:Python 解释器、包管理工具 pip 和虚拟环境模块 venv。
sudo apt install -y python3 python3-pip python3-venv
安装完成后,别忘了验证一下。输入 python3 --version 和 pip3 --version,看到版本号输出,就说明基础环境已经就绪了。
但现实情况往往更复杂。你可能需要运行一个要求特定 Python 3.10 的项目,而系统默认是 3.8。别担心,有两种主流方案可以应对多版本需求:
- 方案一:使用 deadsnakes PPA 安装特定小版本
这个方法适合你只需要安装一两个特定版本(比如 3.10),并且不打算频繁切换的场景。操作很直接:sudo add-apt-repository ppa:deadsnakes/ppa && sudo apt updatesudo apt install -y python3.10 python3.10-venv python3.10-dev
执行后,你就可以通过python3.10命令来使用这个特定版本了。 - 方案二:使用 pyenv 管理多版本
如果你需要在多个 Python 3.x 版本之间灵活切换,pyenv 是更优雅的选择。它允许你在用户目录下安装和管理任意数量的 Python 版本。
首先,安装一堆编译依赖(这是为了能顺利编译不同版本的 Python):sudo apt install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev libffi-dev liblzma-dev python-openssl git
然后,一键安装 pyenv:curl https://pyenv.run | bash
安装完成后,需要将几行配置添加到你的 Shell 配置文件(比如~/.bashrc或~/.zshrc)末尾:export PATH="$HOME/.pyenv/bin:$PATH"eval "$(pyenv init --path)"eval "$(pyenv init -)"eval "$(pyenv virtualenv-init -)"
保存文件后,运行source ~/.bashrc让配置生效。
现在,你就可以自由安装了。例如,安装 Python 3.10.12:pyenv install 3.10.12。之后,用pyenv global 3.10.12设置全局默认版本,或者在特定项目目录下用pyenv local 3.10.12设定仅对该目录有效的本地版本,实现完美的项目级隔离。
二 虚拟环境与依赖管理
有了 Python 解释器,下一步就是为每个项目创建独立的“沙箱”——虚拟环境。这能确保项目间的依赖互不干扰。
进入你的项目根目录,执行创建命令:
python3 -m venv venv
(如果你通过 deadsnakes 安装了 python3.10,也可以用 python3.10 -m venv venv 来指定基于哪个版本创建。)
创建成功后,激活它:
source venv/bin/activate
你会发现命令行提示符前面多了个 (venv),这表示你已经在这个虚拟环境里了。要退出?很简单,输入 deactivate 即可。
在激活的虚拟环境里,pip 就是你的依赖管理利器。首先,升级 pip 自身是个好习惯:
python -m pip install --upgrade pip
安装项目依赖通常是通过一个 requirements.txt 文件:
pip install -r requirements.txt
那么如何生成这个文件呢?当你配置好当前项目的所有依赖后,运行:
pip freeze > requirements.txt
这个文件应该被纳入版本控制(如 Git),这样你的队友就能一键复现完全相同的环境。
国内用户可能会觉得 pip 下载速度慢,这里有个提速小技巧:配置一个国内的镜像源。只需在用户目录下创建配置文件:
mkdir -p ~/.config/pip
nano ~/.config/pip/pip.conf
然后在文件中写入以下内容(以阿里云镜像为例):
[global] index-url = https://mirrors.aliyun.com/pypi/simple/ [install] trusted-host = mirrors.aliyun.com
三 开发工具与 IDE
工欲善其事,必先利其器。一个强大的 IDE 能极大提升编码效率。
- VS Code:轻量且功能强大,通过 Snap 安装非常方便:
sudo snap install code --classic
安装后,务必去扩展市场安装微软官方的 “Python” 扩展。之后,按下 Ctrl+Shift+P,输入 “Python: Select Interpreter”,选择你项目虚拟环境中的那个解释器(路径类似项目路径/venv/bin/python),这样调试和智能提示就都绑定到你的独立环境了。 - PyCharm:专业的 Python IDE,社区版免费且功能足够强大:
sudo snap install pycharm-community --classic
如果你需要更高级的数据库工具、Web 框架支持等,可以考虑通过 JetBrains Toolbox 安装专业版。
四 常见问题与实用建议
走完前面的路,你已经能搭建环境了。但要想走得稳,下面这些经验之谈值得你留意。
- 切记:不要覆盖系统 Python。Ubuntu 很多系统组件依赖自带的 Python。如果你需要从源码编译安装,务必使用
make altinstall而非make install。更推荐的做法是,始终通过 pyenv 或 deadsnakes PPA 来管理额外版本,绝对不要去动/usr/bin/python3这个链接。 - 实现双重隔离:用
pyenv local为项目固定 Python 解释器版本,再用venv隔离项目依赖包。团队协作时,将.python-version文件(pyenv 生成)和requirements.txt一同提交到代码库,能保证所有人环境一致。 - 备齐构建工具:在安装某些带有 C 扩展的 Python 包(如 cryptography, pandas 等)时,可能会报编译错误。提前安装好编译环境和头文件可以避免这个问题:
sudo apt install python3-dev build-essential libssl-dev等。 - 快速环境验证脚本:在你的项目根目录放一个快速检查脚本总是没错的。试试下面这行命令,它能一键输出当前环境的 Python、pip 版本和平台信息:
python - <<'PY' import sys, pip, platform print("Python:", sys.version) print("pip:", pip.__version__) print("Platform:", platform.platform()) PY - 退出与清理:
- 退出虚拟环境:
deactivate - 删除不再需要的虚拟环境:
rm -rf venv(请谨慎操作) - 卸载通过 PPA 安装的特定 Python 版本:
sudo apt remove --purge python3.10 python3.10-venv python3.10-dev && sudo apt autoremove -y
- 退出虚拟环境:
遵循这份指南,你不仅能搭建出一个高效的 Ubuntu Python 开发环境,更能理解其背后的“为什么”。剩下的,就是开始你的创造之旅了。
相关攻略
Ubuntu 系统 php-fpm conf 配置文件找不到?完整解决方案 在 Ubuntu 21 10 或更高版本中部署 Nginx + PHP FastCGI 环境时,如需配置 log_limit 等 PHP-FPM 专属参数,必须明确安装 php*-fpm 软件包。仅安装 PHP CGI 或
在 Ubuntu 系统中定位与查看 PHP 错误日志的完整指南 当 PHP 应用在 Ubuntu 服务器上出现异常时,错误日志是进行故障诊断的首要依据。准确找到并高效分析日志内容,能极大提升问题排查效率。本指南将详细介绍在 Ubuntu 系统中定位和查看 PHP 错误日志的多种方法。 第一步:启动终
Ubuntu 上安装 Python 的常见问题与对策 在 Ubuntu 上配置 Python 环境,看似简单,实则暗藏玄机。从版本选择、依赖安装到环境隔离,每一步都可能遇到意想不到的“坑”。别担心,这份指南将带你系统性地梳理常见问题,并提供经过验证的解决方案。 一、安装前准备与基础检查 动手之前,做
在Ubuntu上管理PHP-FPM服务 高效管理PHP-FPM服务是Linux服务器运维与Web开发环境配置中的核心技能。在Ubuntu系统中,您可以通过一系列简洁明了的命令行操作,轻松完成服务的启动、停止、重启与状态监控。本文将为您提供一份详尽的Ubuntu PHP-FPM服务管理指南。 1 启
在Ubuntu系统中定位与查看PHP-FPM错误日志的完整指南 当服务器出现PHP-FPM相关故障时,查看错误日志是诊断问题的首要且关键步骤。这些日志如同系统的“诊断报告”,详细记录了运行时发生的每一个异常、警告和错误信息。对于Ubuntu系统的用户而言,掌握快速定位并解读这些日志的方法,是高效运维
热门专题
热门推荐
H3C路由器登录管理界面提示证书错误,本质是浏览器与设备间SSL TLS安全握手未通过验证,属常见且可快速处置的技术现象。 遇到H3C路由器管理界面弹出“证书错误”的警告,你先别慌。这本质上不是什么大故障,而是浏览器与你的路由器之间在进行安全“握手”时,验证流程没走通。这在设备圈子里其实挺常见,尤其
针式打印机本身不使用墨粉,而是依靠色带击打完成打印,因此不存在“加墨粉”这一操作,更谈不上墨粉对寿命的影响。所谓“给针打加墨粉”的说法,实为混淆了针式打印机与激光打印机的核心成像原理——前者依赖物理撞击使色带染料转印,后者才通过静电吸附墨粉并经高温定影。权威行业资料显示,针式打印机的使用寿命主要取决
针式打印机不能加墨粉,它使用的是物理击打式打印原理,依靠色带盒中的油墨浸润织物带实现字符转印。 这事儿其实很好理解。针式打印机和办公室里常见的激光打印机,完全是两套“武功路数”。后者依赖碳粉在感光鼓上成像,再经过热压定影,过程充满了静电与高温的精密配合。而针式打印机呢?它的核心耗材体系自始至终都围绕
苏泊尔电磁炉的定时功能通常集成在面板主控区,通过“定时”专用按键一键调出 想给炖汤定个时,或者让火锅到点自动关机?这个操作其实就藏在面板的按键区里。苏泊尔电磁炉大多设有一个独立的“定时”键,位置通常在功能键组的右侧或者数字键的上方,图标很好认,不是沙漏就是个小时钟。轻轻一按,配合旁边的“加”和“减”
高端手机5G频段覆盖差异,核心在于对n28与n79等关键频段的支持完整性 说到高端手机的5G体验,一个常被忽略但至关重要的差异,就藏在那些看似枯燥的频段编号里。尤其是n28(700MHz)和n79(4 9GHz)这两个关键频段,它们的支持是否完整,直接决定了手机信号是“真全能”还是“有短板”。低频段





