正在安装 iPython:"ImportError cannot import name path"?
Installing iPython: "ImportError cannot import name path"?
我正在尝试安装 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
如果我尝试在 Python 控制台上 运行 import pickleshare
或 from path import path
.
,我会遇到同样的错误
我该怎么做才能解决这个问题?
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
看起来这是一个 known issue,由 path.py
包中的更改引起。恢复到旧版本的 path.py
解决了这个问题:
sudo pip3 install -I path.py==7.7.1
我遇到了类似的问题,回滚到 path.py
的早期版本并没有帮助。我卸载了软件包,然后 IPython Notebook 工作了。
pip uninstall -y path.py
我在 Windows 10 上尝试导入 matplotlib 时收到此错误。我的问题是 matplotlib 需要更新。我只是运行下面的代码:
python -m pip install matplotlib
或:
conda install matplotlib
我猜这可以应用于 IPython。
这对我有用,使用:
from pathlib import Path
我正在尝试安装 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
如果我尝试在 Python 控制台上 运行 import pickleshare
或 from path import path
.
我该怎么做才能解决这个问题?
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
看起来这是一个 known issue,由 path.py
包中的更改引起。恢复到旧版本的 path.py
解决了这个问题:
sudo pip3 install -I path.py==7.7.1
我遇到了类似的问题,回滚到 path.py
的早期版本并没有帮助。我卸载了软件包,然后 IPython Notebook 工作了。
pip uninstall -y path.py
我在 Windows 10 上尝试导入 matplotlib 时收到此错误。我的问题是 matplotlib 需要更新。我只是运行下面的代码:
python -m pip install matplotlib
或:
conda install matplotlib
我猜这可以应用于 IPython。
这对我有用,使用:
from pathlib import Path