2015-03-19 2 views
1

Я пытался использовать пакет lmfit для выполнения нелинейных меток наименьших квадратов, и я замечаю, что купированная версия Canopy действительно старая и не имеет значения, t имеет большинство объектов. Так что я следовал инструкции здесь https://support.enthought.com/entries/23389761, как я делал раньше, не проблема:Установленный внешний пакет (через pip) в Enthought Canopy теперь импортирует броски ImportError: не могу импортировать имя scimath

pip install --upgrade setuptools 
pip install --upgrade lmfit 

Теперь, когда я выполняю точно такой же код, некоторые операторы «импорт» (я предполагаю, кто участвует с scimath) дают:

ImportError: cannot import name scimath 

Кажется, что стандартные библиотеки библиотеки python являются точными, например import os.

я на Ubuntu Linux 14 с пологом 1.5.2

Что произошло и как я могу это исправить и избежать нарушения его снова.

+1

Чтобы быть ясным, пакет lmfit не находится в [репозитории Canopy/EPD] (https://www.enthought.com/products/canopy/package-index/). Скорее, он находится в зеркале «Сообщество» (PyPi mirror) (отмечен логотипом «PyPI» в диспетчере пакетов), который содержит 11 000 непроверенных пакетов («как есть»). Мы не тестируем и не обязательно предоставляем зависимости для этих пакетов. –

+0

Это имеет смысл для зависимостей. Но почему старая версия в менеджере пакетов, если она исходит от PyPI, которая имеет текущую версию? – salotz

+0

Отличный вопрос: потому что он был частично отражен от PyPI и не обновлялся с тех пор; действительно рудиментарный, не хороший UX, но не высокий приоритет для исправления. –

ответ

0

Я решил проблему, но я до сих пор не знаю, почему это произошло изначально. Я вошел в диспетчер пакетов и удалил scimath, переустановил его, и ядро ​​перезапустило ядро ​​на моих ноутбуках и интерпретаторах IPython. Это фиксировало это, но я не понимаю, почему, если каким-то образом установка scimath не была повреждена. До этого я попытался перезапустить приложение, компьютер и переустановить навес.