首页 / 资讯中心 / 文章详情

Python安装全流程详解:从版本选择到跑通第一个脚本

Python安装全流程详解:从版本选择到跑通第一个脚本 ★ FEATURED ARTICLE
Python 安装流程从零到跑通第一个脚本的完整实录刚开始学 Python 或者要在新电脑上配开发环境的时候大多数人都卡在第一步安装。我这些年帮人装过的 Python 没有上百次也有几十次了光看报错就见过无数种花样——什么“python 不是内部或外部命令”、pip 装包超时、装了新版结果跑的还是旧版、Mac 上自带 Python 根本不敢动……这篇文章就把整个 Python 安装流程从头到尾捋一遍把每个版本选择、每次勾选、每行命令背后的原因都说清楚。适合完全零基础的新手也适合给同事、学生装过环境但总在细节上翻车的老手当作一份可对照的清单来用。安装 Python 这件事本身不难真正麻烦的是你对“为什么这样装”“装完怎么用”“出了问题怎么查”没有底。所以我不会只给步骤而是把整个流程拆开了讲先判断你该装什么再分 Windows、macOS、Linux 三个平台说具体操作最后讲装完之后的必做配置和常见坑。照着走十分钟内跑通就没问题。1. 安装前的关键判断版本、发行版和渠道选择很多人上来就直接搜“python 下载”点进第一个链接就装结果装完发现版本太老、或者装了个不知名的定制版后面麻烦不断。安装流程的第一步不是下载而是先做三个判断。1.1 选哪个大版本Python 3 是唯一选择现在的 Python 官方大版本只有 Python 3.xPython 2 早在 2020 年就停止维护了网上还能看到的“python 2.7 下载”基本都是历史残留直接忽略。在 Python 3 内部又分为 3.8、3.9、3.10、3.11、3.12、3.13 这样的小版本。这里给一个非常实用的选择规则如果你是零基础学习选当前最新的稳定版就行比如写这篇文章时 3.12/3.13 都在活跃期装新的完全没问题如果你要复现某个项目项目文档里写了要求 Python 3.9那就老老实实装 3.9不要用新版硬顶很多老项目在 3.11 以上会报语法或依赖兼容问题如果你的公司或团队有统一版本基线跟着团队走。一个常见误区是“版本越新越好吗”大多数场景下是的但极端新的版本刚发布时很多第三方库还没来得及适配这时候反而用前一个稳定版本更省心。我个人的习惯是装当前最新稳定版往前数一个版本比如最新是 3.13我就装 3.12第三方库兼容性最稳。等你熟练以后用 pyenv 管理多版本这个问题就不存在了。1.2 选官方版还是集成环境Anaconda 的适用边界安装之前另一个要回答的问题是装官方 Python还是装 Anaconda、Miniconda 这样的科学计算发行版我的建议是普通学习、Web 开发、写工具脚本直接装官方 Python干净、可控、跟社区文档一致。Anaconda 自带一大堆数据科学库和可视化工具对纯学习者是负担而且它的 conda 包管理器和 pip 容易让人搞混。但如果你主要做数据分析、机器学习并且不想自己一个一个装 numpy、pandas、torch 这些Anaconda 确实省事。折中方案是装 Miniconda——只带 conda 和最小依赖需要什么再装什么体量小很多。一句话总结不确定自己干什么就选官方 Python明确搞数据和机器学习选 Miniconda 起步。安装流程后续讲的也是官方 Python 的装法因为它的普适性最强。1.3 下载渠道认准官方域名和官方安装包Python 的官方下载地址是 python.org 的 downloads 页面。Windows 上认准 .exe 安装包macOS 认准 .pkg 或 .dmgLinux 用包管理器。这里要特别提醒一句不要从第三方软件站下载所谓“绿色版”“破解版”Python一方面版本可能过时另一方面这些渠道的安装包可能被篡改安全风险极高。官方安装包都有数字签名Windows 下安装时能看到“已验证的发布者”这是一个很重要的安全检查点。2. Windows 上的 Python 安装勾选比下一步更关键Windows 是最容易出问题、也最好解决的问题的平台。很多人卡住不是因为安装失败而是安装时有两个默认勾选没处理导致装完命令行里敲 python 没反应。2.1 下载与安装器选项记住两个关键勾选登录官网 downloads 页面选择 Windows installer注意区分 64 位和 32 位现在的电脑基本都是 64 位选 64-bit 那个即可。下载完成后双击运行安装界面第一屏是非常重要的两个操作必须做第一勾选底部的“Add python.exe to PATH”。这个选项默认是不勾的但如果不勾装完以后在命令行里敲 python 会提示找不到命令。PATH 的意思是告诉系统“可执行程序放在哪”勾上之后系统就能在任意目录下找到 python.exe。这个坑我见得太多了新手装完把环境变量列表改得乱七八糟还不如一开始就勾上。第二点击“Customize installation”自定义安装而不要直接点 Install Now。在自定义安装里把 Optional Features 中能勾的都保持默认勾选尤其是 pip、py launcher 这几项。下一步里把“Install for all users”和“Add Python to environment variables”也勾上。Install for all users 的意思是安装到 Program Files 目录而不是当前用户的 AppData 目录这样对其他账号和某些权限敏感的工具更友好。网上有些教程让你不要勾“for all users”、装在用户目录更省心但我实测下来勾上的兼容性最好后面装包、让 IDE 识别解释器都少出怪问题。点击 Install 之后等待完成最后界面如果出现“Disable path length limit”按钮建议点击它。这是个非常容易被忽略的选项Windows 默认路径长度限制是 260 个字符Python 的依赖目录嵌套经常能超过这个值不解除的话以后某个包装到深层目录时会莫名失败。点击后按提示允许修改注册表即可这一步做了能省掉未来 80% 的路径相关报错。2.2 安装后验证与环境变量检查安装完成后打开一个新的命令行窗口注意必须新开窗口旧窗口不会加载新的环境变量输入python --version pip --version正常情况下前者会输出类似Python 3.12.4的信息后者输出 pip 的版本号。如果出现“python 不是内部或外部命令”不用慌大概率是 PATH 没有生效按下面的方法手动检查打开“设置 - 系统 - 关于 - 高级系统设置”点击“环境变量”在“系统变量”或“用户变量”中找到 Path 这一项编辑它确认 C 盘下有类似C:\Users\你的用户名\AppData\Local\Programs\Python\Python312\和同目录的Scripts\这两条路径存在不存在就手动添加然后重新打开命令行窗口验证。需要说明的是如果你安装时勾了“Install for all users”Python 的安装路径是C:\Program Files\Python312\那环境变量里的路径相应就是这个检查的时候认清自己装的位置就行。另一个验证项是py launcher。Windows 上安装器默认自带py命令它是一个系统级的 Python 启动器。在命令行里直接敲py或py -V也能看到 Python 版本。这个命令的好处是即使 PATH 环境变量乱了py依然能用它可以从注册表里找到已安装的 Python是排查“Python 找不到”问题时的一个很好用的后备方案。2.3 Windows 上的多版本共存有些人电脑上会同时装 Python 3.8 和 3.12这种场景官方安装器是支持共存的只要你安装时选择了不同的安装目录就行。调用的方式是py -3.8 py -3.12或者在命令行里用完整路径去执行C:\Python312\python.exe -V C:\Python38\python.exe -V但这里要警告一下多版本共存时python这个裸命令到底指向哪个版本由 PATH 里的顺序决定容易混乱。我建议 Windows 用户尽量保持只有一个 Python 在 PATH 里其他版本用py加版本号来调用这样最不容易踩坑。3. macOS 上的 Python 安装避开系统自带 PythonmacOS 的情况跟 Windows 完全不同。系统自带的 Python 是给系统工具用的比如一些 Apple 脚本和系统管理命令会依赖它千万不要去动它也不要往系统 Python 里装第三方包装坏了下不来台。你要做的是另装一个全新的 Python 供自己使用。3.1 推荐方案Homebrew 安装在 Mac 上装软件开发者普遍首选 Homebrew 这个包管理器。如果你还没装过 Homebrew先打开终端执行/bin/bash -c $(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)这个脚本会先安装 Command Line Tools命令行工具也就是 xcode-select 的简化版里面包含编译 Python 需要用到的底层工具链。这个过程时间比较长视网速可能要几分钟到十几分钟终端里显示的是英文进度耐心等就好。装完 Homebrew 之后安装 Python 只需要一条命令brew install pythonHomebrew 会自动处理依赖装完的 Python 会在$(brew --prefix)/opt/python/bin下并且默认会告诉命令行工具怎么去找到它。这里有一个细节Homebrew 的 Python 在装完时不一定在 PATH 的最前面因为系统自带 Python 可能占着/usr/bin/python这个路径名。不用担心Homebrew 装的是python3而不是python所以你在终端里要敲的是python3 --version pip3 --version注意这里跟 Windows 不一样macOS 和所有 Linux 发行版都习惯用python3作为命令名因为要明确区别出系统 Python 2 与 Python 3。后面所有的命令都加上数字 3这才是 Mac 上的正确打开方式。如果你确实想用python这个命令名可以在~/.zshrc里加一行alias pythonpython3 alias pippip3然后执行source ~/.zshrc。这样做的目的是省得每次敲长命令不影响系统的任何原有配置。3.2 官方安装包和 pyenv 管理的选择除了 Homebrew你也可以去 python.org 下载 macOS 安装包双击安装。它的本质是把 Python 和 pip 装到/Library/Frameworks/Python.framework安装界面类似 Windows 的向导多装几次后你会发现官网包也有个坑它默认会在你的用户目录放一个~/.bash_profile里面加上了 Python 的安装路径但如果你用的是 zshmacOS 默认 shell这个文件不一定被加载装完可能依然找不到 python3。解决方法是把那一行的export PATH...手动追加到~/.zshrc里然后重新打开终端。如果你是正经开发者要频繁切换不同 Python 版本比如有的项目要 3.9有的要 3.11强烈建议直接用 pyenv 管理brew install pyenv pyenv install 3.12.4 pyenv global 3.12.4pyenv 的工作原理是重新定义python命令把它指向某个目录下的嵌套版本它不会碰系统自带的 Python安全性很好。你只需要记住以后装新版本、切版本都用 pyenv 命令非常直观。Mac 上的 Python 安装决策我的个人推荐顺序是纯学习用 Homebrew 安装项目多或工作开发用 pyenv官网 .pkg 安装包适合一次性图形界面安装的场景。4. Linux 上的 Python 安装包管理器、源码编译与虚拟环境Linux 服务器上没有图形化安装向导全靠命令行但过程反而更透明因为你能清楚地看到每一步做了什么。需要说明的是Linux 通常预装了 Python 3但系统自带的版本往往偏老而且在很多发行版里系统的包管理器如 apt依赖某个特定版本的 Python贸然升级可能导致系统软件出问题。所以特殊情况下不要动系统 Python单独装一个用户级别的就好。4.1 apt/yum 安装与需要注意的版本号后缀Ubuntu/Debian 系用 aptsudo apt update sudo apt install python3 python3-pip装完看一下版本python3 -V pip3 -VUbuntu 仓库里的 Python 版本通常不是最新的比如当前最新是 3.12但 apt 源里可能还是 3.10/3.11。对绝大多数开发来说也够用除非你明确要某个新版本语法或新特性。这里想提醒一个老手也会犯的错在 Debian/Ubuntu 下不要用sudo apt install python来安装因为有些发行版的python这个包名指向的是 Python 2装了只会得到一堆过时符号链接容易迷惑直接用python3关键字才是正解。CentOS/RHEL 系用 yum 或 dnfsudo dnf install python3 python3-pip有些发行版默认不装 python3-pip所以在 Ubuntu 下有时候你敲pip3会提示找不到补充执行sudo apt install python3-pip即可。4.2 源码编译安装什么时候需要怎么编译有时候你确实需要比发行版仓库更新的版本或者想安装到指定目录来避免影响系统那就走源码编译。以编译 Python 3.12.4 为例步骤是# 先装编译依赖 sudo apt update sudo apt install -y build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev libsqlite3-dev wget libbz2-dev # 下载官方源码包 wget https://www.python.org/ftp/python/3.12.4/Python-3.12.4.tgz tar -xf Python-3.12.4.tgz cd Python-3.12.4 # 配置安装参数 ./configure --enable-optimizations --prefix$HOME/.python make -j$(nproc) make install这里每个参数都很关键--enable-optimizations会开启 PGO 优化编译出来的 Python 运行速度更快但编译时间会显著变长性能敏感场景必开--prefix$HOME/.python把 Python 安装到你自己家目录下不跟系统 Python 冲突同时避免目录权限问题。编译过程中最容易出的错是缺动态库比如提示_ssl模块无法构建多半是没装libssl-dev回到上面的依赖安装命令把对应包补齐再重新配置编译。源码编译是最“硬核”的安装方式它有几个明显的优点可以自定义安装目录、指定模块、开启优化是服务器上部署 Python 应用程序时很常用的手段。但也有明显的缺点费时间、对初学者不友好。如果你只是想在服务器上跑脚本没有特殊要求用包管理器就够了。只有当你发现系统仓库版本太老满足不了需求且无法切换发行版时才建议走源码编译。4.3 Linux 上的多版本管理和更推荐的替代方案Linux 上管理多版本同样用 pyenv安装方式跟 Mac 上类似不过依赖略有差异。在 Ubuntu 上可以这样装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 curl https://pyenv.run | bash然后根据提示把 pyenv 的初始化脚本加到.bashrc里。之后就非常直观了pyenv install 3.11.9 pyenv global 3.11.9 python -V其实还有一个更轻量的方案对于单个项目直接用 Python 自带的venv在项目目录里创建虚拟环境然后从虚拟环境里的 pip 去装项目依赖。这种方式不需要 pyenv也不需要动系统 Python可以简单理解为“按项目隔离环境”。在服务器上部署时我也很喜欢用 Docker 解决 Python 环境的隔离问题——基于一个指定版本的 Python 镜像构建容器彻底跟宿主机隔离。但这是另一个话题了至少在刚开始配置环境时你可以先用 venv 把“Python 安装”和“项目依赖”这两件事分开避免全局依赖混乱。5. 安装后的必做配置pip、venv 与 IDE 识别走到这里Python 本体已经装好了。但安装流程并没有结束后面还有三件小事是决定你后续开发痛不痛苦的关键。5.1 升级 pip 并配置国内镜像源如果慢刚装完的 pip 版本可能偏旧建议先升级python -m pip install --upgrade pip注意 Windows 上如果提示“pip 不是内部或外部命令”改用python -m pip这个写法它可以绕开 pip 可执行文件路径的问题更可靠。我个人在 Windows 上基本默认用python -m pip而不是裸 pip就是这个原因。如果你身处国内网络环境经常遇到 pip 下载超时最省心的方案是配置一个镜像源。以某常见镜像源为例选择任何你信任的镜像服务商即可在用户目录的pip.iniWindows或~/.config/pip/pip.confLinux/macOS里写入[global] index-url https://mirrors.example.com/pypi/simple trusted-host mirrors.example.com配置完以后pip 就不会频繁超时了装 numpy、pandas 这种大包也是秒开。这里要强调的是镜像源存的是官方软件包的副本同一个包名、同样内容安全上没有差异。不要因为镜像源是第三方就排斥它在国内环境是刚需。5.2 使用 venv 创建虚拟环境安装流程的最后一步装完 Python 后我强烈建议你在每个新项目里都建一个虚拟环境。逻辑很简单不同项目依赖的 Django 版本可能不同今天项目 A 要用 Django 3.x项目 B 要用 Django 5.x你不可能在全局环境里同时装两个版本。虚拟环境就是给每个项目创建独立的一小块“贴吧”互不干扰。在项目目录下执行python -m venv .venvWindows 上激活方式.venv\Scripts\activatemacOS/Linux 上激活方式source .venv/bin/activate激活后命令行前面会出现(.venv)的标志此时运行 pip install安装的包就只属于这个项目。退出虚拟环境用deactivate。建立虚拟环境这件事从装完 Python 那一刻起就应该形成习惯它能让你的项目依赖关系非常清晰不然后期环境乱到连你自己都搞不清装了什么。我在实际教学中发现初学者最容易犯的错误是先全局装了一堆乱七八糟的包再用 venv 创建项目环境发现项目里缺一个包又继续往全局里装。循环几次之后全局越来越乱每个项目反而没一个能跑起来。正确的干净流程是进到项目目录就先建虚拟环境之后所有 pip 操作都在激活态的虚拟环境里做。5.3 配置 IDE 的解释器路径只要 Python 装好了IDE 基本都能自动识别。唯一需要手动处理的时候是你装到了非默认位置或者系统里存在多版本。不管是 VS Code 还是其他主流 Python IDE设置里的解释器路径都指向你安装的python.exeWindows或python3Linux/macOS可执行文件即可。在 VS Code 里最简单的方法是随便打开一个 .py 文件按快捷键打开命令面板输入 “Python: Select Interpreter”选择刚安装的那个版本然后用右下角弹出的提示安装 Python 扩展。有一点要注意如果你在项目里已经建好并激活了虚拟环境VS Code 一般会优先识别到.venv里的解释器这也说明.venv放项目根目录、命名用.venv是社区通行的默认约定不要改成别的名字省得到处找。6. 高频报错与排查技巧实录安装流程中遇到报错很正常。下面的问题都是我反复见过无数次的全部列成速查表你直接对号入座就能解决。报错或现象常见原因排查与解决python 不是内部或外部命令安装时没勾 Add to PATH或 PATH 配置失效重新运行安装程序选择 Modify勾上 PATH或手动添加 Python 安装目录和 Scripts 目录macOS 敲python提示command not foundmacOS 默认没有python命令只有python3直接用python3或在 .zshrc 里加alias pythonpython3pip提示命令找不到某些发行版不单独装 pip 命令Windows 上 install 时没勾 pip 组件用python -m pip代替Ubuntu 执行sudo apt install python3-pippip 下载速度极慢或超时默认走国外官方源网络延迟高配置国内镜像源使用python -m pip install临时加-i https://mirrors.example.com/simple测试ImportError: No module named xxx已经全局装了包但项目虚拟环境没激活或者装到了错误解释器下确认 venv 已激活用python -m pip list检查包装到哪个环境在 IDE 里确认解释器路径安装某个包报Microsoft C Build Tools缺失编译型包需要本机编译工具链到微软官网下载安装 C Build Tools选上“使用 C 的桌面开发”工作负载或尽量用预编译 wheel 包源码编译时报ModuleNotFoundError: No module named _ssl系统缺 libssl-dev安装libssl-dev后重新 configure make编译前把所有 -dev 包装齐新开的终端里还是旧版本环境变量未刷新或别名缓存Windows 重启命令窗口或重启终端软件macOS 执行hash -rUbuntu 检查python3 -V与which python3py -3.9提示版本不存在py launcher 找不到该版本的注册信息确认对应版本确实已安装多版本共存时优先用 py launcher 而非裸 python 命令排查这些问题的思路其实有规律可循先确认你到底执行的是哪个解释器用which pythonmacOS/Linux或where pythonWindows看路径再确认识别到的解释器版本是不是你刚装的版本最后看包装的位置跟解释器是否一致。按这个顺序排绝大多数诡异问题几分钟就能定位。7. 多版本共存与管理用 pyenv 和虚拟环境组合拳前面各平台都提到了多版本管理这里专门展开讲一下。为什么要同时装多个版本不是折腾是现实需求。比如说某个线上项目指定用 Python 3.8而你的新项目已经用上了 3.12 的语法特性开发机上就得两个版本并存。还有第三方库的兼容性也占比重有些库在当前最新 Python 上还没有官方 wheel被迫降级用前一版本。pyenv 解决的是“同时装多个 Python 版本并自由切换”的问题venv 解决的是“同一个版本下隔离项目依赖”的问题两者配合使用非常经典# 用 pyenv 装多个版本 pyenv install 3.10.13 pyenv install 3.12.4 # 全局默认用 3.12 pyenv global 3.12.4 # 某个项目底下局部用 3.10 cd ~/project_legacy pyenv local 3.10.13 # 项目内部再建虚拟环境 python -m venv .venv source .venv/bin/activate执行pyenv local 3.10.13后这个目录下会产生一个.python-version文件里面记录着版本号进目录自动生效出目录回到全局版本。这个机制比手动改 PATH 高到不知道哪里去了。Windows 用户没有 pyenv 的官方原生支持但我实测过用 WSLWindows Subsystem for Linux配合 pyenv 效果很好如果不愿意上 WSL老老实实用py -3.10 -m venv的方式建虚拟环境效果也不差。关于多版本管理我踩过最大的一个坑是在服务器上为了省事把 Python 装到了/usr/local用户直接覆盖了系统的某些依赖路径结果整个系统软件崩了最后只能重装系统。所以再次强调不要覆盖系统 Python不要直接替换系统的 /usr/bin/python3不要往系统环境里乱装包。Pyenv、venv、Docker 都是隔离的好工具能不动系统就不动系统。8. 装完以后的下一步跑一个像样的测试Python 安装是否成功最有说服力的判断标准不是--version输出而是你真的写一个程序跑通。装完后第一次动手我建议做两件事第一验证 Python 能执行标准库之外的包第二验证代码能读写文件、跑循环这类基础逻辑。打开你的 IDE 或者文本编辑器新建一个hello.py文件写入import sys from datetime import datetime print(当前 Python 版本:, sys.version) print(现在时间:, datetime.now())命令行里运行python hello.py看到两行输出说明解释器工作正常。然后更近一步安装一个第三方包验证 pip 流程python -m pip install requests再写进代码里执行import requests print(requests.__version__)如果能打印出版本号说明 pip、网络、模块导入机制全部通了。到这一步为止你的 Python 安装流程才算真正完整走完。我的习惯是装完任何一台新机器的 Python都会先做一遍这个“最小验证”不花一分钟但能保证后面学习时不会因为环境问题卡壳把精力真正放在代码本身。很多初学者遇到“为什么我照着教程装了还是跑不起来”最后定位都是在环境验证环节就跳过直接用框架级代码报错都不知道去哪一行查。慢下来把这个最小闭环走通后面会顺利很多。9. 安装过程中的安全注意事项与心态建议最后补几点安全细节。Python 安装包体积大、下载频繁很容易成为攻击目标务必从官方渠道下载Windows 下安装时确认“已验证的发布者”显示的是 Python 软件基金会如果不是立即停止安装。pip 安装第三方包之前尽量在 PyPI 官网看一下包名是否准确很多恶意包就是通过“拼写相似”来诱导安装的比如名字里多一个横线或少一个字母。这类安全习惯不必过度紧张但要有基本意识。还有一点心态上的建议安装 Python 不是“一次成功”的事报错是常态。我安装这么多次照样会在新平台或新版本上遇到从没见过的提示。遇到报错别急把错误信息完整地复制下来搜索比盲猜高效十倍。排错本身就是开发技能的一部分这第一步迈过去后面写代码遇到 bug 就不慌了。Python 的安装流程不复杂但值得认真对待。从选版本、选渠道到逐个平台的安装操作再到安装后的 pip 配置、虚拟环境、IDE 设置每一步都花几分钟打好基础后面几年的开发都会受益。希望这份按平台拆开的安装清单能帮你一次顺利跑通哪怕以后换新电脑、配新的服务器也能照着它一步步从容装好。
阅读完成 · 觉得有帮助?
咨询建站