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

如何解决Python-pptx在Python3.11中的导入/兼容性错误?

解决python-pptx在Python3.11中AttributeError问题的最简单方法

方法一:使用兼容的Python版本(最推荐)

直接将Python版本降级到3.10或更低版本,因为python-pptx官方目前仅支持到Python3.10,这是最稳定且无需修改代码的方案。你可以通过版本管理工具(如pyenv)快速切换版本,或者重新安装对应版本的Python。

方法二:临时修改python-pptx的兼容模块

如果不想更换Python版本,可手动修改python-pptx的兼容文件:

  • 找到报错的文件路径:/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pptx/compat/__init__.py
  • 打开文件后,将所有从collections直接引用的抽象基类,改为从collections.abc引用:
    • 例如将Container = collections.Container改为Container = collections.abc.Container
    • 同时检查并修改其他类似行,比如Mapping = collections.Mapping改为Mapping = collections.abc.Mapping,Iterable = collections.Iterable改为Iterable = collections.abc.Iterable等

问题背景

运行以下脚本时出现错误:

from pptx import Presentation
prs = Presentation()
print('finish')

错误信息:

from pptx import Presentation
  File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pptx/__init__.py", line 14, in <module>
    from pptx.api import Presentation  # noqa
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pptx/api.py", line 15, in <module>
    from .package import Package
  File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pptx/package.py", line 6, in <module>
    from pptx.opc.package import OpcPackage
  File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pptx/opc/package.py", line 11, in <module>
    from pptx.compat import is_string, Mapping
  File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pptx/compat/__init__.py", line 14, in <module>
    Container = collections.Container
                ^^^^^^^^^^^^^^^^^^^^^
AttributeError: module 'collections' has no attribute 'Container'

已知该问题是由于python-pptx暂不支持Python3.11导致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.07 14:30:58