Некоторые модули могут быть импортированы в Python ранее, но теперь могут быть импортированы только в ipython2 - PullRequest
0 голосов
/ 14 сентября 2018

Ранее я установил pytorch, PIL, numpy ... используя pip.После этого я установил python3.Таким образом, ipython переключился с python2 на python3.Я должен использовать ipython2 для запуска ядра Python2.Эти модули все еще хорошо работают в ipython2, но когда я запускаю сценарий python с использованием python, python2, python2.7, все они вызывают ImportError:

ImportError: Нет модуля с именем PIL (numpy, torch ...)

При запуске этой команды: sudo pip install numpy

return:

Требование уже выполнено: numpy в / usr / local / lib / python3.5 / dist-packages (1.15.1)

при выполнении этой команды: sudo pip2 install numpy

return: требование уже выполнено (используйте --upgrade для обновления): numpy in/usr/lib/python2.7/dist-packages

Когда я запускаю: python, import sys, sys.path

, он показывает:

['', '/ home/szy/miniconda2/lib/python27.zip ',' /home/szy/miniconda2/lib/python2.7 ',' /home/szy/miniconda2/lib/python2.7/plat-linux2 ',' / home /szy / miniconda2 / lib / python2.7 / lib-tk ',' /home/szy/miniconda2/lib/python2.7/lib-old ',' /home/szy/miniconda2/lib/python2.7/lib-dynload ',' /home/szy/.local/lib/python2.7/site-packages ',' /home/szy/miniconda2/lib/python2.7/site-packages']

Местонахождение numpy среди них нет.и sys.path в ipython2:

['', '/ usr / local / bin', '/usr/lib/python2.7', '/usr/lib/python2.7/ plat-x86_64-linux-gnu ',' /usr/lib/python2.7/lib-tk ',' /usr/lib/python2.7/lib-old ',' /usr/lib/python2.7/lib-dynload ',' /home/szy/.local/lib/python2.7/site-packages ',' /usr/local/lib/python2.7/dist-packages ',' / usr / lib / python2.7 / dist-packages ',' /usr/local/lib/python2.7/dist-packages/IPython/extensions ',' /home/szy/.ipython']

Что не так?Ранее я мог запускать скрипты с python и импортировать эти модули.

1 Ответ

0 голосов
/ 14 сентября 2018

Убедитесь, что путь к питону, который вы указали в bashrc, правильный.Также будет полезно использовать среду conda, чтобы попробовать то же самое, так как в среде python есть путаница.Для этого вы можете выполнить следующие шаги:

Создать среду и активировать ее, используя следующие команды:

conda create -n test_env python = 2.7

conda activate test_env

conda install ipykernel

установка ядра ipython --name test_env --user

Затем установите необходимые пакеты в созданной вами среде и попытайтесь импортировать ее в созданную среду.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...