Arhn - архитектура программирования

Python3.7: оболочка перезапускается всякий раз, когда я импортирую docx

Я новичок в Python. Я только что успешно установил модуль python-docx в командной строке. Но когда я набрал «import docx» в Shell, Shell всегда перезапускается. Затем, когда я ввел «docx.Document()», возникает ошибка, как показано ниже:

NameError: name "docx" is not defined.

Почему это произойдет? Как исправить? Спасибо!

Плюс: в верхней части моей оболочки отображается:

Python 3.7.0a2 (v3.7.0a2:f7ac4fe, 17 октября 2017 г., 17:06:29) [MSC v.1900, 64-разрядная версия (AMD64)] на win32

И первый модуль lxml, который я установил, называется lxml-4.1.1-cp37-cp37m-win_amd64.

Но если Python 3.7 еще не выпущен, значит ли это, что версия, которую я использую, — это просто Python 3.7 в разработке?

Спасибо!


  • Какую операционную систему ты используешь? Что именно происходит при перезапуске оболочки? 23.12.2017
  • Я использую Win7. Перезапуск оболочки означает: оболочка приостановилась на несколько секунд после того, как я набрал import docx, а затем: ============= ПЕРЕЗАПУСК: оболочка ============= Как будто ничего никогда не импортировалось... 23.12.2017
  • Прежде всего, Python 3.7 уже выпущен? И это IDLE, который перезапускается? Но да, все переменные очищаются между сессиями. 23.12.2017
  • В верхней части моей оболочки отображается: Python 3.7.0a2 (v3.7.0a2:f7ac4fe, 17 октября 2017 г., 17:06:29) [MSC v.1900 64 бит (AMD64)] на win32 23.12.2017

Ответы:


1

Есть большая вероятность, что это действительно связано с модулем lxml, на котором основан python-docx. Вместо ввода import docx попробуйте import lxml и посмотрите, получится ли у вас такое же поведение. Если да, то это немного сужает область поиска, и вы можете выполнить поиск по lxml shell restart или аналогичному, чтобы получить более конкретные ответы.

lxml использует несколько библиотек DLL, которые могут быть не установлены по умолчанию в Windows и иногда могут вызывать проблемы.

Если это не сработает, вы должны точно описать, как вы установили Python. Существует несколько дистрибутивов (например, Anaconda против «прямого» дистрибутива), и это повлияет на диагностику.

В любом случае, использовать Python 3.7 новичку не рекомендуется. У вас есть альфа-версия, которая не будет окончательной до июня следующего года. Лучше придерживаться того, что стабильно, особенно во время обучения. Если вы можете удалить и найти версию 3.6 для установки, она может «просто работать» и в любом случае, скорее всего, выдаст более полезное сообщение об ошибке.

23.12.2017
  • Спасибо! Я заменил его на Python2.7. И тогда все заработало! Большое спасибо за ваш ответ!!! 25.12.2017
  • @BirdPlay6 Вы должны принять этот ответ, если он укажет вам правильное направление. Вот как работает экономика StackOverflow, так вы вознаграждаете людей за то, что они нашли время ответить. 25.12.2017
  • Спасибо! Я принял ответ, нажав на галочку! Кроме того, я нажал на голосование, но голоса не изменились. Может быть, это потому, что моя репутация слишком низкая? 25.12.2017
  • Да, я считаю, что есть минимум для голосования, хотя я считаю, что он довольно низкий, что-то меньше 20, если я правильно помню :) 25.12.2017
  • Новые материалы

    Коллекции публикаций по глубокому обучению
    Последние пару месяцев я создавал коллекции последних академических публикаций по различным подполям глубокого обучения в моем блоге https://amundtveit.com - эта публикация дает обзор 25..

    Представляем: Pepita
    Фреймворк JavaScript с открытым исходным кодом Я знаю, что недостатка в фреймворках JavaScript нет. Но я просто не мог остановиться. Я хотел написать что-то сам, со своими собственными..

    Советы по коду Laravel #2
    1-) Найти // You can specify the columns you need // in when you use the find method on a model User::find(‘id’, [‘email’,’name’]); // You can increment or decrement // a field in..

    Работа с временными рядами спутниковых изображений, часть 3 (аналитика данных)
    Анализ временных рядов спутниковых изображений для данных наблюдений за большой Землей (arXiv) Автор: Рольф Симоэс , Жильберто Камара , Жильберто Кейрос , Фелипе Соуза , Педро Р. Андраде ,..

    3 способа решить квадратное уравнение (3-й мой любимый) -
    1. Методом факторизации — 2. Используя квадратичную формулу — 3. Заполнив квадрат — Давайте поймем это, решив это простое уравнение: Мы пытаемся сделать LHS,..

    Создание VR-миров с A-Frame
    Виртуальная реальность (и дополненная реальность) стали главными модными терминами в образовательных технологиях. С недорогими VR-гарнитурами, такими как Google Cardboard , и использованием..

    Демистификация рекурсии
    КОДЕКС Демистификация рекурсии Упрощенная концепция ошеломляющей О чем весь этот шум? Рекурсия, кажется, единственная тема, от которой у каждого начинающего студента-информатика..