Ответ 1
Похоже, что это известная проблема, вызванная изменением пакета path.py
. Возврат к старой версии path.py
решает следующее:
sudo pip3 install -I path.py==7.7.1
Я пытаюсь установить IPython. Я запускал pip install ipython[notebook]
без каких-либо ошибок, но теперь я получаю следующее:
$ ipython notebook
Traceback (most recent call last):
File "/Users/me/.virtualenvs/.venv/bin/ipython", line 7, in <module>
from IPython import start_ipython
File "/Users/me/.virtualenvs/.venv/lib/python2.7/site-packages/IPython/__init__.py", line 48, in <module>
from .terminal.embed import embed
File "/Users/me/.virtualenvs/.venv/lib/python2.7/site-packages/IPython/terminal/embed.py", line 16, in <module>
from IPython.core.interactiveshell import DummyMod
File "/Users/me/.virtualenvs/.venv/lib/python2.7/site-packages/IPython/core/interactiveshell.py", line 31, in <module>
from pickleshare import PickleShareDB
File "/Users/me/.virtualenvs/.venv/lib/python2.7/site-packages/pickleshare.py", line 41, in <module>
from path import path as Path
ImportError: cannot import name path
У меня такая же ошибка, если я пытаюсь запустить import pickleshare
на консоли Python или from path import path
.
Что я могу сделать, чтобы исправить это?
Похоже, что это известная проблема, вызванная изменением пакета path.py
. Возврат к старой версии path.py
решает следующее:
sudo pip3 install -I path.py==7.7.1
У меня были подобные проблемы, и возврат к более ранней версии path.py
не помог. Я удалил пакет, а затем работал IPython Notebook.
pip uninstall -y path.py
Похоже, что pickleshare
находится в пакете IPython.utils
. Попробуйте привязать
from IPython.utils.pickleshare import PickleShareDB
Аналогично, path
находится в IPython.external
. Попробуйте ввести
from IPython.external.path import path as Path
В любом случае, я бы проверить, существуют ли следующие файлы.
"/Users/me/.virtualenvs/.venv/lib/python2.7/site-packages/IPython/utils/pickleshare.py"
"/Users/me/.virtualenvs/.venv/lib/python2.7/site-packages/IPython/external/path/_path.py"
Все это указывает на то, что, вероятно, ваша версия IPython/notebook устарела. Пара решений будет
1) Попробуйте отредактировать файлы в пакетах сайта и измените строки импорта на
from IPython.external.path import path as Path
from IPython.utils.pickleshare import PickleShareDB
Но такой рискованный, кто знает, что еще может потерпеть неудачу.
В противном случае попробуйте обновить ipython/notebook
pip install ipython --upgrade
pip install "ipython[notebook]" --upgrade