You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Arch Linux下pip安装python-telegram-bot版本不一致报错

问题原因

你当前使用的pip 21.0版本存在已知的版本校验逻辑bug:当解析文件名带下划线、包名带横杠的Python包(比如python-telegram-bot对应的wheel文件名为python_telegram_bot-xxx.whl)时,会错误触发版本不一致判定,哪怕文件名和元数据里的版本号完全相同,也会直接丢弃安装包、回退到更低版本尝试,最终所有版本都会被判定为无效导致安装失败。
你贴的报错日志里明确写了两边版本号完全一致(比如filename has '13.12', but metadata has '13.12'),就是这个bug的典型表现,和python-telegram-bot包本身、你的Python版本都没有关系。Arch官方源里预置的pip版本停留在21.0刚好踩中这个问题。

修复方案

按优先级从高到低选以下任意一种方法即可:

  • 升级pip版本,从根源解决bug。Arch环境下优先先同步系统源的pip包:
    sudo pacman -Syu python-pip
    
    如果同步完系统源的pip版本还是低于21.2(这个版本修复了前述校验bug),就给当前用户单独安装最新版pip,不会修改系统目录的文件、也不会和pacman的包管理冲突:
    python -m pip install --upgrade pip --user
    
    升级完成后重新执行安装命令即可正常安装:
    pip install python-telegram-bot
    
  • 临时绕过校验,不想升级pip的话可以加参数跳过版本检查逻辑直接安装:
    pip install python-telegram-bot --no-cache-dir
    
    这个方法只是临时绕过问题,后续安装其他同类命名格式的包还是可能触发相同报错,长期使用建议还是升级pip。
  • 最佳实践补充:Arch系统下不建议直接往全局系统Python环境里装第三方包,很容易和pacman维护的系统Python依赖产生冲突。日常写项目最好先用python -m venv 项目虚拟环境目录创建独立虚拟环境,激活虚拟环境之后再装依赖,能避开绝大多数Python包管理问题。

内容的提问来源于stack exchange,提问作者Bourbon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.28 19:46:00