ModuleNotFoundError: ни один модуль с именем 'exceptions' в python 3.6 [duplicate]

Моя версия соединения на основе массива для строки concat:

var c = []; //c stands for content
c.push("
"); c.push("
"); $(body).append(c.join('\n'));

Это сработало хорошо для меня, тем более, что я часто вставляю значения в html, построенный таким образом. Но у него много ограничений. Отступы были бы приятными. Не иметь дело с вложенными кавычками, было бы очень приятно, и только громоздкость этого меня беспокоила.

Является ли .push () для добавления в массив, занимающий много времени? См. Этот ответ:

( Есть ли причина, по которой разработчики JavaScript не используют Array.push ()? )

После просмотра этих (противоположных ), похоже, что .push () отлично подходит для строковых массивов, которые вряд ли будут расти более чем на 100 элементов - я избегу его в пользу индексированных добавлений для больших массивов.

23
задан MatthewMartin 11 April 2018 в 18:17
поделиться

5 ответов

Проблема, как было отмечено ранее в комментариях, заключается в том, что модуль docx несовместим с Python 3. Он был исправлен в этом pull-request на 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
1
ответ дан dsh 17 August 2018 в 10:27
поделиться
  • 1
    Не могли бы вы также разместить здесь фрагмент кода? – Kamiccolo 24 August 2015 в 13:08

Если вы используете python 3x, не устанавливайте docx вместо go для

pip install python-docx 

, он совместим с python 3x

official Document: https: // pypi.org/project/python-docx/

35
ответ дан Roshan 17 August 2018 в 10:27
поделиться
  • 1
    Это решило это для меня – 10SecTom 7 August 2017 в 09:21
  • 2
    Кажется, это должен быть принятый ответ ... – jadianes 22 July 2018 в 07:57
  • 3
    это решило мою проблему, обновила официальную ссылку в документе – Roshan 2 August 2018 в 07:32

В модуле исключений Python 3 был удален, и все стандартные исключения были перемещены во встроенный модуль. Это означает, что больше не нужно делать явный импорт любых стандартных исключений.

скопирован из

2
ответ дан sajid 17 August 2018 в 10:27
поделиться
  1. Удалить модуль docx с помощью pip uninstall docx
  2. Загрузить python_docx-0.8.6-py2.py3-none-any.whl файл из http://www.lfd.uci.edu/~gohlke/pythonlibs/
  3. Запустите pip install python_docx-0.8.6-py2.py3-none-any.whl, чтобы переустановить docx. Это решило эту ошибку импорта для меня. Просто чтобы предоставить решение ...
10
ответ дан Vancent 17 August 2018 в 10:27
поделиться

вы можете установить docx not python-docx

, вы можете увидеть это для установки python-docx

http://python-docx.readthedocs.io/ ан / последний / пользователь / install.html # установить

1
ответ дан 某某某 17 August 2018 в 10:27
поделиться
  • 1
    Модуль исключения не найден, это ошибка, возникающая при установке неправильной библиотеки – juan Isaza 3 June 2017 в 23:30
Другие вопросы по тегам:

Похожие вопросы: