在python3.3中导入docx时我有错误ImportError:没有名为'exceptions'的模块

use*_*559 59 python python-3.x python-docx

当我导入时docx我有这个错误:

>File "/Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/site-packages/docx-0.2.4-py3.3.egg/docx.py", line 30, in <module>
        from exceptions import PendingDeprecationWarning
    ImportError: No module named 'exceptions'
Run Code Online (Sandbox Code Playgroud)

如何解决此错误(python3.3,docx 0.2.4)?

小智 115

如果您使用的是python 3x,请不要安装docx

pip install python-docx 
Run Code Online (Sandbox Code Playgroud)

它与python 3x兼容

官方文件:https://pypi.org/project/python-docx/

  • ...要删除“docx”,您可以先执行“pip uninstall docx”以保持干净! (4认同)

Sam*_*han 15

使用import docx时一定要安装python-docx不要安装docx。运行即可安装模块pip install python-docx

安装名称docx用于不同的模块 但是,

当您要导入 python-docx 模块时,您需要运行 import docx,而不是import python-docx.

如果您仍然想使用 docx 模块,则

首先,您需要确保安装了docx模块。如果没有,那么只需运行pip install docx。如果它显示“*需求已经满足*”,那么解决方案是:

  1. 去图书馆找到docx.py文件,你需要去安装python的目录然后\Lib\site-packages\并找到docx.py文件
  2. 在文本编辑器中打开docx.py文件并找到此代码

    from exceptions import PendingDeprecationWarning
    
    Run Code Online (Sandbox Code Playgroud)
  3. 将上面的代码替换为
try:
    from exceptions import PendingDeprecationWarning
except ImportError:
    pass
Run Code Online (Sandbox Code Playgroud)
  1. 保存文件
  2. 现在您可以在 Python 3.x 中运行import docx模块而没有任何问题


小智 14

  1. 用.卸载docx模块 pip uninstall docx
  2. python_docx-0.8.6-py2.py3-none-any.whlhttp://www.lfd.uci.edu/~gohlke/pythonlibs/下载文件
  3. 运行pip install python_docx-0.8.6-py2.py3-none-any.whl以重新安装docx.这为我顺利解决了上述导入错误.只是为了提供解决方案......


某某某*_*某某某 9

您可能正在安装docx,而不是python-docx

你可以看到这个进行安装 python-docx

http://python-docx.readthedocs.io/en/latest/user/install.html#install


小智 9

如果您使用的是 python 3.x,请确保同时安装了python-docxdocx

安装 python-docx :

pip install python-docx
Run Code Online (Sandbox Code Playgroud)

安装 docx :

pip install docx
Run Code Online (Sandbox Code Playgroud)


saj*_*jid 5

在Python 3中,异常模块已删除,所有标准异常均移至内置模块。因此,这意味着不再需要显式导入任何标准异常。

复制自


小智 5

pip 安装 python-docx

这对我有用,尝试使用管理员模式安装


小智 3

正如前面在评论中指出的,问题是 docx 模块与 Python 3 不兼容。它已在 github 上的拉请求中修复:https ://github.com/mikemaccana/python-docx/pull/67

由于异常现在是内置的,因此解决方案是不导入它。

docx.py
@@ -27,7 +27,12 @@
 except ImportError:
     TAGS = {}

-from exceptions import PendingDeprecationWarning
+# Handle PendingDeprecationWarning causing an ImportError if using Python 3
+try:
+    from exceptions import PendingDeprecationWarning
+except ImportError:
+    pass
+
 from warnings import warn

 import logging
Run Code Online (Sandbox Code Playgroud)