根本原因是pip与python指向不同环境;需用which python/where python和python -m pip --version比对路径是否一致,不一致则用python -m pip install确保装入当前环境,并检查pip show的Location是否在sys.path中、导入名是否正确、IDE/Jupyter内核是否匹配、当前目录有无同名.py文件干扰。

根本原因不是包没装上,而是 pip 和你运行 python 的环境不一致——90% 的 ModuleNotFoundError 都卡在这一步。
怎么确认 pip 和 python 是同一个环境
别信终端前缀或“Successfully installed”,直接查路径:
- 在终端执行
where python(Windows)或which python(macOS/Linux),记下输出路径 - 再执行
python -m pip --version,看输出里写的 Python 路径是否和上一步完全一致 - 如果不一致,说明
pip装进了 A 环境,而你的脚本跑在 B 环境里 - 此时必须统一用
python -m pip install xxx,它强制调用当前python对应的pip
为什么 pip show 能看到包,import 却失败
常见于路径错位或导入名写错:
从QuickView趋势笔记生成韩语AI播客包,含双人主持脚本(Callie×Nick)、Gemini多说话人TTS音频、字幕时间轴与渲染修正、缩略图+MP4包装及YouTube标题/描述输出。支持完整版(15~20分钟)和压缩版(5~7分钟)。
- 运行
pip show requests,看Location:输出的路径是否在python -c "import sys; [print(p) for p in sys.path if 'site-packages' in p]"的结果中 - 如果不在,说明包装对了地方,但当前 Python 没加载那个
site-packages(比如虚拟环境没激活、用了python -s启动) - 检查导入名:比如
pip install python-dotenv→ 正确导入是import dotenv,不是import python-dotenv(连字符非法) - 再比如
pip install opencv-python→ 导入用import cv2,不是import opencv
Jupyter 或 IDE 用户特别容易踩的坑
它们的内核和终端 shell 往往不是同一个环境:
- VS Code:右下角显示的 Python 解释器路径,必须和
which python输出一致;否则即使终端里装好了,Notebook 也看不到 - Jupyter:必须在 notebook cell 里运行
!pip show xxx或!python -m pip install xxx,不能只在系统终端操作 - PyCharm:File → Settings → Project → Python Interpreter,确保选中的是你实际安装包的那个解释器,而不是系统默认的全局 Python
最隐蔽的干扰项是当前目录下存在同名 .py 文件(比如你写了 requests.py),它会覆盖真正的 requests 包,且可能不报错但行为异常——删掉它再试。

















