Неправильный интерпретатор Python / pip: такого файла или каталога нет - PullRequest
0 голосов
/ 24 января 2019

Кажется, я потерял все пакеты python, которые у меня были на моем Mac.

Я ввел следующую команду для обновления с python3.6 до python3.7:

brew upgrade python

и теперь, когда я ввожу ipython3 в терминале, он говорит:

-bash: /usr/local/bin/ipython3: /usr/local/opt/python/bin/python3.6: bad interpreter: No such file or directory

Однако я смог использовать ipython3 мгновений до того, как я выполнил обновление кофе.Кроме того, я думаю, что я потерял все свои пакеты Python, потому что когда я делаю модуль импорта в Python3, он говорит:

ModuleNotFoundError: No module named *examplepythonpackage*

Являются ли пакеты Python, которые я установил прежде, все потерялись навсегдаЯ должен переустановить их индивидуально сейчас?

Я также не могу запустить (в терминале bash) $ ipython3

-bash: /usr/local/bin/ipython3: /usr/local/opt/python/bin/python3.6: bad interpreter: No such file or directory

Для справки:

$ which python
    /usr/bin/python
$ which python3
    /usr/local/bin/python3
$ pip --version
    pip 18.1 from /Library/Python/2.7/site-packages/pip-18.1-py2.7.egg/pip (python 2.7)
$ pip3 --version
    pip 18.1 from /usr/local/lib/python3.7/site-packages/pip (python 3.7)

Ответы [ 2 ]

0 голосов
/ 24 января 2019

Ваши пакеты не пропали, но невидимы для вашего нового питона. Вы можете попытаться обмануть python 3.7 в поиске пакетов внутри каталога python3.6, но тогда многие пакеты не будут работать, в частности пакеты расширения, поскольку 3.6 и 3.7 не совместимы с ABI.

Как правило, для такого обновления требуется переустановить все пакеты.

0 голосов
/ 24 января 2019

Связь между ipython и тем интерпретатором Python и библиотеками, которые он использует, устанавливается во время установки (в отличие от динамического каждый раз, когда вы его запускаете), поэтому я думаю, что ваша проблема будет решена, если вы удалите, а затем повторноустановить ipython, то есть:

brew rm ipython
brew install ipython

Если вы хотите понять это, посмотрите на ваш ipython скрипт так:

more $(which ipython)
...