Python pip 全面讲解教程(2026 实用版)

pip 是 Python 官方的包管理工具,用于安装、卸载、更新、管理 Python 第三方包(如 requests、numpy、pandas 等),是 Python 开发的必备工具。本教程涵盖 pip 核心用法、环境适配、避坑技巧,适配 Windows/macOS/Linux 系统。

一、pip 基础认知

1. 什么是 pip?

pip 全称 "Pip Installs Packages",是 Python 生态的核心包管理工具,可:

  • 安装/卸载/更新 Python 第三方包;
  • 管理包的版本和依赖;
  • 导出/导入项目依赖清单(requirements.txt)。

版本兼容 :Python 3.4+ 版本默认自带 pip,无需手动安装;若缺失,执行 python -m ensurepip 即可快速补装。

2. 验证 pip 安装(必做)

打开终端/命令提示符,执行以下命令验证 pip 可用性(优先推荐 python -m pip 写法,避免环境冲突):

bash 复制代码
# 通用写法(适配所有系统)
python -m pip --version
# 简写(需确保环境变量配置正确)
pip --version  # Windows/macOS/Linux
pip3 --version # 多 Python 版本时区分 Python 3

正常输出pip 24.0 from ... (python 3.8)(显示版本和 Python 路径)。

二、pip 核心用法(高频操作)

以下命令均适配 Windows/macOS/Linux,重点标注 Windows 特有的避坑点。

1. 安装包(核心操作)

(1)安装最新版本
bash 复制代码
python -m pip install requests
(2)安装指定版本
bash 复制代码
# 安装精确版本(无特殊符号,所有系统通用)
python -m pip install requests==2.28.1
(3)安装版本范围(重点避坑)

问题场景 :Windows CMD 中 </> 是系统重定向符号,直接执行 pip install requests>=2.20,<3.0 会报错。
正确写法:给版本范围加引号(Windows 必做),或用 PowerShell 执行:

bash 复制代码
# Windows CMD 推荐写法(加引号)
python -m pip install "requests>=2.20,<3.0"
# 或单引号
python -m pip install 'requests>=2.20,<3.0'

# macOS/Linux 终端/Windows PowerShell(无需引号)
python -m pip install requests>=2.20,<3.0

版本范围语法说明:

  • >=2.20:版本大于等于 2.20;
  • <3.0:版本小于 3.0;
  • 组合表示「2.20 ≤ 版本 < 3.0」。
(4)从本地文件安装

若下载了 .whl/.tar.gz 格式的包文件:

bash 复制代码
# 安装 .whl 包(需匹配 Python 版本/系统架构)
python -m pip install requests-2.28.1-py3-none-any.whl
# 安装源码包
python -m pip install requests-2.28.1.tar.gz
(5)批量安装(requirements.txt)

requirements.txt 是项目依赖清单,格式为「包名==版本号」,适合团队协作:

txt 复制代码
# requirements.txt 示例
requests==2.28.1
numpy==1.24.3
pandas==2.0.1

执行批量安装:

bash 复制代码
python -m pip install -r requirements.txt

2. 查看已安装的包

bash 复制代码
# 查看所有已安装包(含版本)
python -m pip list
# 查看指定包的详细信息(版本、依赖、安装路径)
python -m pip show requests

3. 更新包

bash 复制代码
# 更新指定包到最新版本
python -m pip install --upgrade requests
# 简写
python -m pip install -U requests

4. 卸载包

bash 复制代码
# 卸载单个包(需确认)
python -m pip uninstall requests
# 卸载多个包(跳过确认提示)
python -m pip uninstall -y numpy pandas

三、pip 进阶技巧(避坑+效率)

1. 更换国内镜像源(解决下载慢/失败)

默认 pip 从国外 PyPI 源下载,速度慢,优先配置国内镜像。

(1)临时使用(单次生效)
bash 复制代码
python -m pip install requests -i https://pypi.tuna.tsinghua.edu.cn/simple/
(2)永久配置(推荐)
系统 配置步骤
Windows 1. 进入用户目录(C:\Users\你的用户名),新建 pip 文件夹; 2. 新建 pip.ini 文件,写入下方配置;
macOS/Linux 1. 进入用户目录(~),新建 .pip 文件夹; 2. 新建 pip.conf 文件,写入下方配置;

配置内容(通用)

ini 复制代码
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple  # 清华源
[install]
trusted-host = pypi.tuna.tsinghua.edu.cn  # 信任镜像源

常用国内镜像源:

  • 清华:https://pypi.tuna.tsinghua.edu.cn/simple
  • 阿里云:https://mirrors.aliyun.com/pypi/simple/
  • 豆瓣:https://pypi.douban.com/simple/

2. 导出项目依赖(方便部署)

bash 复制代码
# 导出所有已安装包到 requirements.txt
python -m pip freeze > requirements.txt
# 仅导出项目实际用到的包(更精准,需先装 pipreqs)
python -m pip install pipreqs
pipreqs ./ --encoding=utf8  # ./ 为项目目录

3. 解决权限问题(安装报错 Permission denied)

bash 复制代码
# 安装到用户目录(不影响系统级 Python)
python -m pip install requests --user

4. 忽略缓存强制重新下载

bash 复制代码
python -m pip install requests --no-cache-dir

5. 检查包依赖冲突

bash 复制代码
python -m pip check

6. 升级 pip 自身

bash 复制代码
# Windows
python -m pip install --upgrade pip
# macOS/Linux(避免系统权限问题)
python -m pip install --upgrade pip --user

四、Windows 特有的 pip 避坑指南

问题现象 原因 解决方案
pip 命令提示"找不到指定文件" Python 未加入环境变量 1. 用 python -m pip 替代; 2. 将 Python 安装目录和 Scripts 目录加入系统 PATH;
版本范围命令(如 <3.0)执行报错 CMD 解析 </> 为系统重定向符号 给版本范围加引号,如 pip install "requests>=2.20,<3.0";或用 PowerShell 执行;
安装 .whl 包提示不支持当前平台 包版本与 Python 版本/系统架构不匹配 执行 pip debug --verbose 查看支持的 wheel 格式,下载对应版本;

五、验证 pip 操作结果

以 requests 为例,验证安装/版本是否符合要求:

bash 复制代码
# 进入 Python 交互环境
python
# 执行以下代码
import requests
print("requests 版本:", requests.__version__)  # 输出 2.28.1 即符合 >=2.20,<3.0
response = requests.get("https://www.baidu.com")
print("请求状态码:", response.status_code)  # 输出 200 表示包可用

总结

  1. 核心避坑 :Windows CMD 中执行含 </> 的版本范围命令时,必须给版本加引号;
  2. 通用写法 :优先使用 python -m pip 替代直接 pip,避免环境变量冲突;
  3. 效率优化:配置国内镜像源,解决包下载慢/失败问题;
  4. 版本管理 :通过 == 指定精确版本,通过 ">=x.x,<x.x" 指定版本范围(Windows 加引号)。

掌握以上内容,即可熟练、无坑地使用 pip 管理 Python 第三方包,满足日常开发、部署的所有需求。

相关推荐
skywalk81632 小时前
FreeBSD下安装rustup、cargo和uv
开发语言·python·rust·cargo
WangYaolove13142 小时前
基于人脸表情的分类算法的设计(源码+文档)
python·mysql·django·毕业设计·源码
开开心心_Every2 小时前
安卓语音转文字工具:免费支持实时转换视频
python·游戏·微信·django·pdf·excel·语音识别
wjykp2 小时前
4.脑电实验设计的原理与实例
python
weixin_481950352 小时前
跟AI学习用python制作下载器-3
开发语言·python·学习
HappRobot2 小时前
Python语言有接口概念吗
开发语言·python
jhf20202 小时前
热门的南京GEO优化系统
大数据·人工智能·python
如果曾经拥有2 小时前
医学本体识别 映射-UMLS
开发语言·python
2301_810540732 小时前
python第一次作业
开发语言·python·算法