news 2026/9/19 19:22:19

The Python Guide:在 Windows 上安装与配置 Python 开发环境(Python 2.7 与 Python 3 全流程)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
The Python Guide:在 Windows 上安装与配置 Python 开发环境(Python 2.7 与 Python 3 全流程)

The Python Guide:在 Windows 上安装与配置 Python 开发环境(Python 2.7 与 Python 3 全流程)

【免费下载链接】python-guidePython best practices guidebook, written for humans.项目地址: https://gitcode.com/gh_mirrors/py/python-guide

导读

本文以《The Python Guide》(python-guide)仓库中的 Windows 安装指南 为主体,系统讲解在 Windows 平台完成 Python 安装、PATH 环境变量配置、pip/Setuptools 安装以及虚拟环境管理的完整流程,并补充 Python 3(Chocolatey 方式)安装路线。读完本文,你将能够在 Windows 上从零搭建一套可用于真实项目开发、依赖隔离、可随时重建的 Python 环境,并理解各步骤背后的设计动机(如 Python 安装包为何默认不修改 PATH、为何目录内嵌版本号等)。

一、安装之前:先想清楚要装哪个 Python

在动手之前,先明确版本选择。仓库中的 Picking a Python Interpreter(3 vs 2) 给出了明确的结论:Python 3 是强烈推荐的选择;Python 2 已于 2020 年 1 月 1 日终止生命周期(EOL),只在维护存量代码、依赖仅支持 Python 2 的库等强理由下才应考虑使用。

不过,许多系统(如旧版 macOS、CentOS/RHEL/Ubuntu 老版本)默认自带 Python 2.7,而且仍有大量历史教程以 Python 2 为示例。因此仓库同时保留了 Python 2 与 Python 3 两套安装指南:

  • Python 2 安装指南:docs/starting/install/下的 Windows、Linux、OS X
  • Python 3 安装指南:docs/starting/install3/下的 Windows、Linux、OS X

其中 Python 2 的 Windows 安装指南就是本文的主体;Python 3 的 Windows 指南(基于 Chocolatey)也会在后文完整展开。总入口见 Properly Installing Python。

二、在 Windows 上安装 Python 2.7(MSI 方式)

1. 下载与手动安装

从 Python 官方网站下载最新版 Python 2.7 的 Windows 安装包(MSI 格式)。如果想确保安装到完全最新的版本,可以打开 python.org 首页,点击Downloads > Windows链接获取。

Windows 版本的 Python 以MSI 安装包形式提供。手动安装只需双击文件即可启动安装向导。MSI 包格式的另一个重要价值是:它允许 Windows 管理员使用企业标准的工具(如组策略、脚本)自动化批量安装,适合需要大规模部署的运维场景。

2. 目录设计与多版本共存

Python 安装器在设计上有两个关键行为,理解了它们可以避免不少困惑:

  • 安装目录内嵌版本号:按设计,Python 默认安装到带版本号的目录,例如 Python 2.7 会安装到C:\Python27\。这使得同一台机器上可以同时存在多个版本的 Python 而互不冲突
  • 不自动修改 PATH:安装器不会自动修改PATH环境变量,因此你对"运行哪一个 Python"始终保有完全的控制权——默认使用哪个解释器由你说了算(例如让python指向 Python 3,而python2指向 Python 2.7)。

当然,同一时间只能有一个解释器作为 Python 文件类型的默认关联程序

3. 验证安装

打开命令提示符(cmd)或 PowerShell,输入:

python --version

如果能输出Python 2.7.x之类的版本信息,说明解释器已可用(若未配置 PATH,则需要先完成下一步)。

三、配置 PATH 环境变量:让python随手可用

每次输入 Python 解释器的完整路径非常繁琐,因此建议将默认 Python 版本的目录加入PATH。假设 Python 安装在C:\Python27\,需要把下面两个目录加入PATH

C:\Python27\;C:\Python27\Scripts\
  • 第一个目录C:\Python27\包含python.exe解释器本体;
  • 第二个目录C:\Python27\Scripts\会在安装某些包时接收生成的命令行工具(command files),例如pip.exeeasy_install.exe等,因此是一个非常有用的补充。

用 PowerShell 一键配置

在 PowerShell 中运行下面这行命令,即可把上述目录追加到当前用户的Path环境变量("User"表示仅作用于当前用户,不会影响系统级配置):

[Environment]::SetEnvironmentVariable("Path", "$env:Path;C:\Python27\;C:\Python27\Scripts\", "User")

注意:

  • 该命令修改的是持久化的用户级环境变量,新开的终端窗口才会生效;已经打开的窗口可能需要重启终端(或注销/重新登录)才能识别新的 PATH。
  • 在安装向导的某些步骤中,也提供了在安装过程中直接勾选/填写 PATH的选项,等效于手动配置。

小提示:多版本并存时如何区分

仓库的 Python 2 指南中提到,Python 安装目录内嵌版本号就是为了多版本共存。与之呼应,macOS 指南 中展示了借助python/python2/python3三个可执行名区分解释器的做法;在 Windows 上同样可以用C:\Python27\python.exeC:\Python39\python.exe这类全限定路径精确指定解释器。

四、安装后必做:Setuptools 与 pip

1. 为什么它们是"最关键的两个第三方包"

Setuptools 与 pip 是 Python 生态中最核心的两个第三方包

  • 安装完成后,你可以用一条命令完成任何合规 Python 软件的下载、安装与卸载;
  • 你还能以极小的成本,把这种"网络安装"能力集成到自己的 Python 软件中(即通过setup.py声明依赖,由 pip 自动解析安装)。

仓库各安装指南(如 Linux 版)都强调:在开始构建真实项目之前,务必安装这些工具,其中Setuptools 尤其应该总是安装,因为它是使用其他第三方库的基础。

2. 哪些版本自带 pip

  • Python 2.7.9 及之后(Python 2 系列);
  • Python 3.4 及之后。

默认内置 pip。因此,只要你的 Python 版本满足上述条件,这一节大多只需"确认 + 升级"。

3. 检查 pip 是否已安装

打开命令提示符运行:

command -v pip

说明:command -v是类 Unix 风格的命令,用于查看某个命令的解析路径。如果 pip 存在,会输出其可执行文件路径;如果输出为空或报错,说明 pip 尚未安装或不在 PATH 中。

在 Windows 上也可以直接运行pip --version验证。需要注意:在某些发行版上pippip3分别对应 Python 2 / Python 3(详见 Linux 安装指南),Windows 上建议使用python -m pip ...形式调用,避免版本歧义。

4. 安装 / 升级 pip 与 Setuptools

如果 pip 缺失,按官方 pip 安装指南操作即可——该流程会自动安装最新版 Setuptools。对于已自带 pip 的版本,直接升级到最新:

python -m pip install -U pip

(该命令在 Python 3 的 Windows 指南 中同样被推荐使用,用于确保所有受支持的 Python 3 版本都带上最新的 pip。)

五、现代路线:用 Chocolatey 安装 Python 3

如果你不想手动下载 MSI,仓库提供了更现代的 Python 3 安装路线——使用Chocolatey(Windows 7+ 的社区级包管理器,体验类似 macOS 上的 Homebrew)。

1. 安装 Chocolatey

先按照 Chocolatey 官方安装说明完成 Chocolatey 的安装。

2. 一条命令安装 Python 3

Chocolatey 将 Python 3 作为默认推送版本,因此安装非常简单:

choco install python

运行完毕后,应该就能直接从控制台启动 Python 了。Chocolatey 的一个显著优点是自动把 Python 加入 PATH,省去了手动配置环境变量的步骤——这与上文 Python 2 MSI 安装器"不修改 PATH"的行为形成鲜明对比,也解释了为什么它是推荐路线。

3. 升级 pip

所有受支持的 Python 3 版本都内置 pip,只需确保它是最新的:

python -m pip install -U pip

六、虚拟环境:让每个项目的依赖井水不犯河水

1. 什么是虚拟环境

虚拟环境(Virtual Environment)是一套将不同项目所需依赖隔离存放的工具:它为每个项目创建独立的 Python 环境。它解决的经典困境是:

"项目 X 依赖 1.x 版,而项目 Y 需要 4.x 版。"

例如,你可以同时维护一个依赖 Django 2.0 的项目和一个依赖 Django 1.8 的项目(Python 3 指南的示例;Python 2 指南中的对应示例是 Django 1.10 与 1.8),各自互不干扰。此外,虚拟环境还能让你的全局 site-packages 目录保持干净、可控

详细的虚拟环境教程位于 Pipenv & Virtual Environments。

2. 低层工具:virtualenv(Windows 同样适用)

virtualenv是创建隔离 Python 环境的底层工具:它创建一个文件夹,内含项目所需的一切可执行文件与 pip 副本。安装与验证:

$ pip install virtualenv $ virtualenv --version

基本用法(Windows 与类 Unix 通用):

$ cd project_folder $ virtualenv venv

virtualenv venv会在当前目录创建venv文件夹(venv是业界通用约定名,常见于各类 ignore 文件如.gitignore中),其中包含 Python 可执行文件与一份 pip 副本。环境名可任意取,省略名称则文件直接放到当前目录。

激活环境(Windows 与 Unix 命令不同):

C:\Users\SomeUser\project_folder> venv\Scripts\activate

激活后,提示符左侧会出现环境名(如(venv)C:\Users\SomeUser\project_folder>),此后pip install安装的任何包都会进入venv文件夹,与全局 Python 安装隔离。Linux/macOS 对应命令是source venv/bin/activate。退出环境统一使用:

$ deactivate

删除环境只需删除venv文件夹本身。仓库还提醒:Python 3.3 起标准库内置了venv模块,可替代第三方virtualenv

3. 高层工具:Pipenv(推荐)

Pipenv 是面向项目的依赖管理器,精神上类似 Node.js 的 npm 或 Ruby 的 Bundler——比 pip 更上层,简化了常见场景下的依赖管理。安装(使用--user做用户级安装,避免破坏系统包):

$ pip install --user pipenv

在 Windows 上,若安装后pipenv命令不可用,需要把用户级 Scripts 目录加入 PATH:运行py -m site --user-site得到类似C:\Users\Username\AppData\Roaming\Python36\site-packages的路径,将其中的site-packages替换为Scripts,得到C:\Users\Username\AppData\Roaming\Python36\Scripts,再把它加入用户 PATH(可通过控制面板修改,改完可能需要注销后生效)。

项目内安装依赖:

$ cd project_folder $ pipenv install requests

Pipenv 会创建虚拟环境并在项目目录生成Pipfile(用于记录项目依赖,便于分享与重装)。之后使用pipenv run python main.py运行脚本,或用pipenv shell进入一个已激活依赖的 shell。

4. Windows 用户的增强工具:virtualenvwrapper-win

类 Unix 上有 virtualenvwrapper 把所有环境集中管理;Windows 上对应的是virtualenvwrapper-win

$ pip install virtualenvwrapper-win

Windows 下默认的WORKON_HOME%USERPROFILE%\Envs。常用命令:

  • mkvirtualenv project_folder:在~/Envs下创建环境;
  • workon project_folder:激活/切换环境(会自动退出当前环境);
  • deactivate:退出;
  • rmvirtualenv venv:删除环境。

七、进阶配置:pip 与虚拟环境的"红线"管理

仓库的 Further Configuration of pip and Virtualenv 提供了两条 Windows 开发者常用的硬核配置。

1. 强制 pip 只能在虚拟环境里安装

多项目切换时很容易"以为装进了虚拟环境,实际装进了全局"。可以在pip.ini(Windows 上位于%USERPROFILE%\pip\pip.ini,Unix 是~/.pip/pip.conf)中写入:

[global] require-virtualenv = true

此后在非虚拟环境中执行pip install会得到提示:

$ pip install requests Could not find an activated virtualenv (required).

若仍需要安装全局工具包,可定义别名函数gpip() { PIP_REQUIRE_VIRTUALENV=false pip "$@"; }(类 Unix 的~/.bashrc写法)来按需绕过。

2. 缓存已下载的包

pip 6.0 起默认启用缓存机制,无需配置;旧版本可通过pip.ini[global]段设置:

[global] download-cache = %USERPROFILE%\pip\cache

类 Unix 对应download-cache = $HOME/.pip/cache,缓存可避免每个新项目重复下载同一批包。

八、验证安装与常见问题排查

装完之后,建议按下面清单做一轮端到端验证:

检查项命令期望结果
Python 解释器python --version(Python 3 用python3输出版本号
pip 可用python -m pip --version输出 pip 版本及其所属 Python 路径
虚拟环境创建virtualenv venvvenv\Scripts\activate提示符出现(venv)前缀
依赖冻结/重建pip freeze > requirements.txtpip install -r requirements.txt能在新环境复现相同版本依赖

常见问题与对策:

  1. 'python' 不是内部或外部命令:PATH 未生效,重新检查C:\Python27\(或对应安装目录)是否已加入用户 PATH,并重启终端
  2. pip指向了错误的 Python:优先使用python -m pip ...调用,确保 pip 与当前解释器版本一一对应。
  3. command -v pip无输出:pip 未安装或未入 PATH,按第四节流程处理。
  4. 激活脚本venv\Scripts\activate报执行策略错误:这是 PowerShell 的执行策略限制,与 Python 本身无关,按 PowerShell 官方文档调整策略或用 cmd 执行即可。

九、延伸阅读(仓库内相关文档)

  • Properly Installing Python(安装总入口):三平台安装指南索引,以及"为什么推荐同时安装 Setuptools、Pip 与 Virtualenv"的说明。
  • Picking a Python Interpreter(3 vs 2):版本选型、CPython/PyPy/Jython 等实现对比。
  • Pipenv & Virtual Environments:虚拟环境完整教程(Pipenv 与 virtualenv 双路线、依赖冻结与重建)。
  • Further Configuration of pip and Virtualenv:require-virtualenv、下载缓存等进阶配置。
  • Installing Python 3 on Windows(Chocolatey 路线):本文第五节内容的原文出处。
  • Installing Python 2 on Linux 与 Installing Python 2 on Mac OS X:跨平台安装参考。

结语

在 Windows 上搭建 Python 环境的完整路径可以概括为四步:选对版本 → 装好解释器(MSI 或 Chocolatey)→ 配好 PATH 与 pip/Setuptools → 用虚拟环境隔离项目依赖。理解"内嵌版本号目录 + 不自动改 PATH"这两条设计,你就能在多版本共存时始终掌控"运行的是哪个 Python";而 pip 与虚拟环境的组合,则是保证全局环境干净、项目依赖可复现的基石。这套流程与本仓库的 Linux 指南、macOS 指南 相互呼应,构成了跨平台的统一最佳实践。

【免费下载链接】python-guidePython best practices guidebook, written for humans.项目地址: https://gitcode.com/gh_mirrors/py/python-guide

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/19 19:21:45

Java与PHP源码审计双线实战:从应急响应到漏洞溯源

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/19 19:18:42

机器学习大作业全流程指南:数据预处理、模型选择与评估调参

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/19 19:17:56

SMPTE 274M-2008标准解析:1080p视频TRS时序与采样格式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/19 19:17:07

TwinCAT3动态PDO配置:实时控制系统下的安全映射与状态协同

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/19 19:16:42

流媒体下载教程:3步跑通N_m3u8DL-RE,解密并下载HLS/DASH视频

流媒体下载教程:3步跑通N_m3u8DL-RE,解密并下载HLS/DASH视频 【免费下载链接】N_m3u8DL-RE Cross-Platform, modern and powerful stream downloader for MPD/M3U8/ISM. English/简体中文/繁體中文. 项目地址: https://gitcode.com/GitHub_Trending/n…

作者头像 李华