如何解决 pip install 安装报错 ModuleNotFoundError: No module named ‘requests’ 问题

Python系列Bug修复PyCharm控制台pip install报错:如何解决 pip install 安装报错 ModuleNotFoundError: No module named ‘requests’ 问题


摘要

在日常Python开发过程中,pip install 是我们最常用的依赖安装命令之一。然而很多开发者在 PyCharm 控制台 中执行 pip install requests 或者安装其他第三方依赖时,经常会遇到 ModuleNotFoundError: No module named ‘xxx’ 这种典型报错。本文将围绕 开发环境、异常原因、解决方案 全面拆解这一问题,并给出一个面向实战的多维度排查指南。

文章目录

  • Python系列Bug修复PyCharm控制台pip install报错:如何解决 pip install 安装报错 ModuleNotFoundError: No module named 'requests' 问题
    • 摘要
    • 一、开发场景背景
    • 二、开发环境说明
    • 三、常见问题与解决方案
      • 1. Module包没安装 / 包名拼写错误
      • 2. pip 与 python 解释器不匹配
      • 3. 网络问题:切换国内镜像
      • 4. 忘了 `import` 或 `__init__.py` 缺失
      • 5. 包版本不对 / 依赖冲突
      • 6. 自定义包名冲突
      • 7. PYTHONPATH 未配置
      • 8. 相对导入错误
      • 9. pip 版本过旧
    • 四、问题排查流程图
    • 五、总结表格
    • 六、扩展思路
    • 七、结尾

【Python系列PyCharm控制台pip install报错】


一、开发场景背景

这个异常通常出现在以下典型场景:

  • 使用 PyCharm 2025 控制台 安装依赖后,运行代码时仍旧提示找不到模块。
  • MacOS 系统 下多版本 Python 并存,pip 与 python 的执行环境不一致。
  • 虚拟环境 未正确激活,导致安装的包被装到了系统环境之外。

引用说明:

ModuleNotFoundError: No module named ‘requests’
说明:解释器在当前环境中没有找到 requests 包。


二、开发环境说明

  • 操作系统:MacOS
  • Python 版本:Python 3.11(同样适用于 3.9 / 3.10 / 3.12)
  • IDE:PyCharm 2025 (Community/Professional Edition)
  • 包管理工具:pip, venv, conda(部分情况)

三、常见问题与解决方案

1. Module包没安装 / 包名拼写错误

运行:

pip install requests

注意大小写问题,RequestRequests 都是错误写法。


2. pip 与 python 解释器不匹配

有时候 pip 默认对应的是 python2 或系统路径。解决办法:

python3 -m pip install requests

或者指定解释器路径:

/Users/xxx/venv/bin/python -m pip install requests

3. 网络问题:切换国内镜像

国内环境经常出现 pip 下载失败。可以使用清华源:

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

配置全局镜像(Mac/Linux 下 ~/.pip/pip.conf):

[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple

Windows 下 pip.ini

[global]
index-url = https://pypi.douban.com/simple/

4. 忘了 import__init__.py 缺失

即使安装成功,如果 包路径下没有 __init__.py 文件,Python 解释器也可能无法识别。


5. 包版本不对 / 依赖冲突

指定版本安装:

pip install requests==2.31.0

如有冲突可先卸载再重装:

pip uninstall requests
pip install requests

6. 自定义包名冲突

如果自己建了一个文件夹叫 requests,运行时会优先导入你自己的包而不是第三方库,解决办法:改名或调整 PYTHONPATH


7. PYTHONPATH 未配置

确认 PyCharm 项目解释器 是否选择了正确的虚拟环境。
路径不在 PYTHONPATH 下,可以在 .bashrc.zshrc 里添加:

export PYTHONPATH=$PYTHONPATH:/Users/xxx/myproject

8. 相对导入错误

避免写成:

from .requests import get

正确写法:

import requests

9. pip 版本过旧

升级 pip:

pip install --upgrade pip

四、问题排查流程图

执行 pip install requests
是否报错?
模块可用
pip 与 python 环境一致?
使用 python -m pip install
是否网络问题?
切换国内源
检查PYTHONPATH / 包名冲突 / 导入方式
最终解决

Python系列PyCharm控制台pip install报错


五、总结表格

问题原因解决方案
包没安装 / 拼写错误pip install requests
pip 与解释器不一致python -m pip install requests
网络下载失败使用国内镜像 pip 源
忘了 importimport requests
缺少 __init__.py 文件添加 __init__.py
包版本不对pip install requests==指定版本
包名冲突修改自定义包名 / 调整 PYTHONPATH
路径不在 PYTHONPATH 下export PYTHONPATH=...
相对导入错误改为绝对导入
pip 版本过旧pip install --upgrade pip

六、扩展思路

除了以上方案,还可以尝试:

  • 使用 conda 管理环境:conda install requests
  • 使用 requirements.txt 保持团队环境一致:pip install -r requirements.txt
  • 使用 Poetrypipenv 等现代依赖管理工具统一版本。

七、结尾

温馨提示🔔
更多Bug解决方案请查看==>全栈Bug解决方案专栏https://blog.csdn.net/lyzybbs/category_12988910.html


作者✍️名片
CSDN猫头虎万粉变现计划和账号流量诊断服务名片

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/pingmian/96630.shtml
繁体地址,请注明出处:http://hk.pswp.cn/pingmian/96630.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

解释 ICT, Web2.0, Web3.0 这些术语的中文含义

要理解“ICT Web2.0”术语的中文含义,需先拆解为 ICT 和 Web2.0 两个核心概念分别解析,再结合二者的关联明确整体指向: 1. 核心术语拆解:中文含义与核心定义 (1)ICT:信息与通信技术 中文全称&am…

IDEA版本控制管理之使用Gitee

使用Gitee如果之前没用过Gitee,那么IDEA中应该长这样(第一次使用)如果之前使用过Gitee,那么IDEA中应该长这样这种情况,可以先退出Gitee,再拉取Gitee,退出Gitee方法见文章底部好,那么…

NLP(自然语言处理, Natural Language Processing)

让计算机能够理解、解释、操纵和生成人类语言,从而执行有价值的任务。 关注社区:Hugging Face、Papers With Code、GitHub 是现代NLP学习不可或缺的资源。许多最新模型和代码都在这里开源。 ①、安装库 pip install numpy pandas matplotlib nltk scikit…

后端json数据反序列化枚举类型不匹配的错误

后端json数据反序列化枚举类型不匹配的错误后端返回的json格式在前端反序列化报错System.Text.Json.JsonException:“The JSON value could not be converted to TodoReminderApp.Models.Priorityen. Path: $.Data.Items.$values[0].Priority | LineNumber: 0 | BytePositionIn…

市面上主流接口测试工具对比

公司计划系统的开展接口自动化测试,需要我这边调研一下主流的接口测试框架给后端测试(主要测试接口)的同事介绍一下每个框架的特定和使用方式。后端同事根据他们接口的特点提出一下需求,看哪个框架更适合我们。 2025最新Jmeter接口…

2025.2.4 更新 AI绘画秋葉aaaki整合包 Stable Diffusion整合包v4.10 +ComfyUI 整合包下载地址

2025.2.4 更新 AI绘画秋葉aaaki整合包 Stable Diffusion整合包v4.10 ComfyUI 整合包下载地址Stable Diffusion整合包【下载链接】ComfyUI整合包【下载链接】【报错解决】Stable Diffusion整合包 【下载链接】 下载地址 https://uwtxfkm78ne.feishu.cn/wiki/GHgVwA2LPiE9x2kj4W…

Nginx优化与 SSL/TLS配置

1、隐藏版本号可以使用Fiddler工具抓取数据包,查看Nginx版本,也可以在CentOS中使用命令curl -I http://192.168.10.23 显示响应报文首部信息。方法一:方法一:修改配置文件方式 vim /usr/local/nginx/conf/nginx.conf http {includ…

JavaWeb05

一、Listener监听器1、简介Listener是Servlet规范中的一员在Servlet中,所有的监听器接口都是以Listener结尾监听器实际上是Servlet规范留给JavaWeb程序员的一些特殊时机当在某些时机需要执行一段Java代码时,可以用对应的监听器2、常用的监听器接口&#…

科普:在Windows个人电脑上使用Docker的极简指南

在Windows个人电脑上使用Docker的极简指南: 1. 快速安装 下载安装包(若进不了官网,则可能要科学上网) 访问Docker Desktop官方下载页 访问Docker官网 选择Windows及(AMD64 也称为 x86-64,是目前主流 PC的…

【开题答辩全过程】以 “居逸”民宿预订微信小程序为例,包含答辩的问题和答案

个人简介一名14年经验的资深毕设内行人,语言擅长Java、php、微信小程序、Python、Golang、安卓Android等开发项目包括大数据、深度学习、网站、小程序、安卓、算法。平常会做一些项目定制化开发、代码讲解、答辩教学、文档编写、也懂一些降重方面的技巧。感谢大家的…

LeetCode 2565.最少得分子序列

给你两个字符串 s 和 t 。 你可以从字符串 t 中删除任意数目的字符。 如果没有从字符串 t 中删除字符,那么得分为 0 ,否则: 令 left 为删除字符中的最小下标。 令 right 为删除字符中的最大下标。 字符串的得分为 right - left 1 。 请你返回…

【文献笔记】PointWeb

参考笔记: https://blog.csdn.net/m0_69412369/article/details/143106494 https://www.cnblogs.com/A-FM/p/PointWeb.html 注:本文的大部分内容是转载而来 CVPR 2019:PointWeb: Enhancing Local Neighborhood Features for Point Cloud Processing 论文:https://ieeex…

用工招聘小程序:功能版块与前端设计解析

在当下就业市场日益活跃的背景下,用工招聘小程序应运而生,它以高效、便捷的特点,为求职者与企业搭建起一座沟通的桥梁。本文将深入分析这类小程序的核心功能版块及其前端设计,探讨其如何优化招聘流程,提升用户体验。用…

uTools 轻工具 简洁又方便

uTools 是一款跨平台轻工具平台,通过插件化设计提供高效工作方式,支持 Windows、MacOS、Linux 系统。 ‌ 核心功能 ‌超级搜索框‌:支持快捷键(默认 AltSpace)呼出,可搜索文件、网页、应用等。 ‌‌本地文…

图技术重塑金融未来:悦数图数据库如何驱动行业创新与风控变革

随着大数据的广泛应用和云计算的快速发展,金融行业的数据已经从“大”转向了“海”,从而对传统的数据处理、分析、挖掘等的方法和工具提出了更高的要求,也为金融领域的数据的海量的关联分析、实时的风控和复杂的决策支持等带来了一系列的挑战…

openEuler 24.03 (LTS-SP2)简单KVM安装+桥接模式

华为文档创建虚拟机步骤 配置bios支持虚拟化 2、检查系统是否支持虚拟化 3、安装虚拟化相关组件,并启动 yum install -y qemu virt-install virt-manager libvirt-daemon-qemu edk2-aarch64.noarch virt-viewer systemctl start libvirtd systemctl enable libvirtd4、创建…

Sentinel:微服务架构下的高可用流量防卫兵

一、引言:为什么需要Sentinel? 在分布式系统架构中,随着业务复杂度的提升和微服务架构的普及,服务之间的依赖关系变得越来越复杂。一个服务的不可用或异常可能会在整个系统中产生连锁反应,导致整个系统崩溃。这就是所…

详解 new 和 delete

目录 一、简要描述两者的作用 二、实例解析 1. 浅层区别 2. 深层区别 三、拓展(operator new 的妙用) 一、简要描述两者的作用 new : 是c推崇的 内存申请 方式,拥有比 malloc 更先进的机制 delete :是 对应的 内存释放方式,…

fMoE论文阅读笔记

原文链接:https://arxiv.org/pdf/2502.05370v1 在混合专家(MoE)架构中,初始阶段涉及输入样本通过GateNet进行多分类的鉴别过程,目的是确定最适合处理输入的专家模型。这个步骤被称为“experts selection”,…

Linux 禅道开源版安装

1、下载安装包安装wget https://www.zentao.net/dl/zentao/18.5/ZenTaoPMS.18.5.zbox_64.tar.gz tar zxf ZenTaoPMS.18.5.zbox_64.tar.gz/opt/zbox/zbox -ap 81 -mp 3307 # 指定apache服务端口 、 mysql服务端口 /opt/zbox/zbox start #启动禅道服务( 其他命令 /opt/zbox/…