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

升级Python 3.10后启动shell报AttributeError: collections无MutableMapping属性错误

错误原因

Python 3.10 正式移除了collections模块下对抽象基类别名的兼容支持,这类抽象基类早在Python 3.3就已经迁移到collections.abc子模块下。你遇到的报错是因为当前虚拟环境中安装的requests库版本较低,仍在调用已被移除的collections.MutableMapping属性,和Django版本无关。
从堆栈信息可以看到,报错是在Django shell默认调用bpython交互式终端时,bpython依赖的requests库触发的兼容问题。

解决方案

方案1:升级兼容Python3.10的依赖包(推荐)

激活项目虚拟环境后依次执行以下命令:

  • 升级requests到最新兼容版本:
    pip install --upgrade requests
  • 同步升级bpython避免其他潜在兼容问题:
    pip install --upgrade bpython

升级完成后再执行python manage.py shell即可正常启动。

方案2:临时使用Python原生shell绕过问题

如果暂时不想升级依赖,可以在启动shell时指定使用Python自带的交互式终端,避免触发bpython的加载逻辑:
python manage.py shell --interface python

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 09:57:00