开发Telegram Bot时import telegram.ext遇ModuleNotFoundError求助
解决ModuleNotFoundError: No module named 'telegram.ext'
1. 清理所有冲突包
先彻底卸载相关包,避免版本或命名冲突:
pip uninstall -y telegram python-telegram-bot pip3 uninstall -y telegram python-telegram-bot
执行后用以下命令确认无残留:
pip list | grep -E "telegram|python-telegram-bot" pip3 list | grep -E "telegram|python-telegram-bot"
若仍有输出,通过pip show <package-name>找到包路径后手动删除。
2. 对齐Python与pip环境
确保运行代码的Python解释器和pip/pip3对应环境一致:
- 查看当前Python版本:
python --version或python3 --version - 查看pip关联环境:
pip --version或pip3 --version
确认两者输出的Python路径完全匹配。
3. 安装正确的依赖包
不要安装telegram包(此包与Telegram Bot开发无关),直接安装官方支持的python-telegram-bot:
python3 -m pip install python-telegram-bot
用python3 -m pip可确保安装到当前使用的Python3环境中,避免环境错乱。
4. 验证安装有效性
打开Python交互终端,执行以下代码测试:
import telegram.ext print(telegram.ext.__file__)
无报错则说明安装成功,可正常运行Bot代码。
额外排查项
- 检查代码文件名是否为
telegram.py,这会与第三方包名冲突,需立即重命名 - 若使用虚拟环境,确保已激活环境后再执行安装命令
内容的提问来源于stack exchange,提问作者SarahRosa
相关产品推荐
相关产品推荐

