Windows系统下怎么同时安装Python 2和Python 3

木白
木白
发布时间:2026-11-03| 5人浏览过
原创

详细讲解在Windows系统下同时安装Python 2和Python 3的完整步骤,包括安装顺序、py启动器的使用、环境变量配置、pip管理以及常见问题的解决方法。

在一台Windows电脑上同时使用Python 2和Python 3是完全可行的。关键在于利用Windows版Python自带的py启动器(Python Launcher for Windows)来区分版本,再分别为两个版本管理各自的pip和第三方包。下面按照实际操作顺序,把从下载到验证的整个过程讲清楚。

一、为什么需要同时安装两个版本

虽然Python 2已经在2020年1月停止官方维护,但不少老项目、内部工具和第三方库仍然只能在Python 2下运行。同时,新项目几乎都基于Python 3。如果你手上同时有这两类工作,就需要让两个版本在同一台机器上各自独立运行,互不干扰。

Windows上实现这一点比Linux和macOS更简单,因为Python官方为Windows提供了一个叫py.exe的启动器,专门用来在多个Python版本之间切换。

二、安装前的准备

先确认两件事:

  • 当前系统中是否已经安装了某个版本的Python。打开命令提示符(Win+R 输入 cmd 回车),分别执行 python --version 和 py --version,看看有没有输出版本号。
  • 如果已有旧版本且不再需要,建议先在"控制面板 → 程序和功能"中卸载干净,避免路径冲突。

然后到Python官网下载页面获取安装包。Python 2最后一个版本是2.7.18,Python 3建议下载当前的稳定版本。两个安装包都选择Windows installer(64-bit),如果系统是32位则选32-bit版本。

下载地址:访问 https://www.python.org/downloads/,在页面中可以找到Python 3最新稳定版和Python 2.7.18的下载链接。

三、安装Python 3(建议先装)

建议先安装Python 3,原因是Python 3的安装程序默认会安装py.exe启动器,而且会把它放到系统目录,后续安装Python 2时启动器能自动识别。

双击Python 3安装包,在安装界面底部有两个复选框:

  • Install launcher for all users——勾选。这会把py.exe安装到C:\Windows\下,所有用户都能使用。
  • Add Python 3.x to PATH——可以勾选,也可以不勾选。如果勾选,在命令行直接输入python时会调用Python 3。后面我们主要用py命令来区分版本,所以这一项不是必须的。

点击"Customize installation"可以自定义安装路径。建议把Python 3装到容易辨认的目录,比如C:\Python39或C:\Python311(根据具体版本号),而不是默认的AppData深层目录。勾选"Install for all users"后安装路径会自动变为C:\Program Files\Python3x\,也可以手动改。

其余选项保持默认即可,点击Install等待完成。

四、安装Python 2.7

双击Python 2.7.18的安装包(.msi格式),安装界面比较传统。主要注意以下几点:

  • 安装路径默认是C:\Python27,保持即可。如果改了路径,后面配置环境变量时要对应修改。
  • 在特性选择页面,确保"Register Extensions"和"Add python.exe to Path"这两项不要勾选。因为如果把Python 2也加入PATH,命令行输入python时就会产生冲突——系统不知道该调用哪个版本。

安装完成后,py.exe启动器会自动检测到系统中存在的所有Python版本。

Windows系统下怎么同时安装Python 2和Python 3
图1:Windows下同时安装Python 2和Python 3的完整操作流程

五、用py启动器切换版本

安装完成后,打开命令提示符,执行以下命令查看系统中已安装的Python版本:

py -0

示例输出:

 -3.11-64 *
 -2.7-64

带星号的是默认版本。接下来通过-2或-3参数指定要使用的版本:

py -2 --version
py -3 --version

示例输出:

Python 2.7.18
Python 3.11.5

运行Python 2脚本:

py -2 my_old_script.py

运行Python 3脚本:

py -3 my_new_script.py

如果脚本文件第一行写了shebang注释,py也会自动识别。比如脚本开头是#!/usr/bin/env python2,直接执行py my_script.py就会用Python 2运行。

六、分别管理pip和第三方包

两个Python版本各自带有独立的pip,安装第三方包时同样通过py命令区分:

py -2 -m pip install requests
py -3 -m pip install requests

上面两条命令分别把requests库安装到Python 2和Python 3的各自目录中,互不干扰。

查看某个版本下已安装的包:

py -2 -m pip list
py -3 -m pip list

升级pip本身:

py -2 -m pip install --upgrade pip
py -3 -m pip install --upgrade pip
不建议直接在命令行使用pip install或pip3 install,因为它们指向哪个版本取决于PATH配置,容易搞混。始终用py -2 -m pip或py -3 -m pip最可靠。
Windows系统下怎么同时安装Python 2和Python 3
图2:py启动器将命令分发到不同Python版本及各自独立的包目录

七、环境变量的正确配置

如果在安装Python 3时勾选了"Add to PATH",系统PATH中已经有了Python 3的路径。此时在命令行直接输入python会启动Python 3。

如果你希望python命令默认指向Python 3,同时保留通过py -2使用Python 2的能力,只需要把Python 3的路径加到PATH中就行,不要同时加Python 2的路径。

手动检查和修改PATH

右键"此电脑"→"属性"→"高级系统设置"→"环境变量"。在"系统变量"中找到Path,双击编辑。确认其中包含Python 3的安装目录和Scripts子目录,例如:

C:\Python311
C:\Python311\Scripts

确认其中没有Python 2的目录(C:\Python27和C:\Python27\Scripts)。如果有,删掉它们。Python 2的使用完全交给py -2。

修改后打开新的命令提示符窗口(已打开的窗口不会读取新环境变量),验证:

python --version

示例输出:

Python 3.11.5
Windows系统下怎么同时安装Python 2和Python 3
图3:常用命令与对应Python版本的快速对照表

八、虚拟环境的使用

在实际项目中,建议为每个项目创建虚拟环境,而不是把所有包都装到全局目录。虚拟环境会绑定创建它时使用的Python版本。

用Python 3创建虚拟环境:

py -3 -m venv myproject_env

激活虚拟环境(Windows命令提示符):

myproject_env\Scripts\activate

激活后命令行前面会出现(myproject_env)前缀,此时python和pip命令都指向这个虚拟环境中的Python 3,不需要再加py -3。

Python 2不支持venv模块,需要用virtualenv:

py -2 -m pip install virtualenv
py -2 -m virtualenv mylegacy_env
mylegacy_env\Scripts\activate

退出虚拟环境:

deactivate

九、常见问题

1. 输入py提示"不是内部或外部命令"

说明py.exe没有正确安装。重新运行Python 3的安装程序,选择"Modify",确保勾选了"py launcher"。或者检查C:\Windows\py.exe是否存在。

2. py -0只显示一个版本

可能是另一个版本没有正确安装,或者安装时选择了"仅当前用户"而py.exe装在了系统级别。尝试用管理员权限重新安装缺失的版本,选择"Install for all users"。

3. 安装包时报SSL错误(Python 2)

Python 2.7自带的SSL模块版本较老,连接PyPI时可能失败。可以尝试指定国内镜像源:

py -2 -m pip install requests -i https://pypi.tuna.tsinghua.edu.cn/simple

4. 两个版本的脚本入口冲突

比如Python 2和Python 3都安装了一个叫pytest的包,在命令行直接输入pytest只会执行PATH中排在前面的那个版本。解决方法是始终通过py -2 -m pytest或py -3 -m pytest来调用,或者在虚拟环境内使用。

Windows系统下怎么同时安装Python 2和Python 3
图4:Windows双版本Python共存的要点总结

十、小结

在Windows上同时使用Python 2和Python 3,整个过程可以归纳为:先装Python 3(带py启动器),再装Python 2(不加PATH),然后统一用py -2和py -3区分版本。包管理用py -X -m pip,项目开发用虚拟环境隔离。掌握这套方法后,两个版本可以在同一台机器上长期稳定共存,不会互相干扰。

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。