红联Linux门户
Linux帮助

jupyter:ImportError:No module named shutil_get_terminal_size

发布时间:2017-04-13 15:04:12来源:linux网站作者:为爱存在
先说一下我的环境,ubuntu16.04, python2.7。我之前用apt安装过ipython,版本应该是2点几,记不太清了,2.4吧。使用ipython正常,也没有报错。
之后我用pip(9.0)安装jupyter notebook,显示安装成功了,jupyter notebook也能运行成功,但是无法打开.ipynb文件,总是提示要kernel restart,但是总是启动失败。控制台提示:”ImportError: No module named shutil_get_terminal_size”。
 
我试过以下解决方案:
1.用pip安装shutil_get_terminal_size,但显示已经安装过这个模块了。
2.用apt卸载ipython,用pip卸载jupyter,总之把ipython,jupyter相关的都卸载,使用命令:
pip install --upgrade setuptools pip
再用pip把jupyter安装一遍,仍然是老问题,值得一提的是,jupyter会自动安装ipython5.3.0。
 
之后我尝试了如下解决方案,解决了问题:
1.进入/usr/local/lib/python2.7/dist-packages/IPython/utils/文件夹
2.打开 terminal.py文件,注释如下语句:
from backports.shutil_get_terminal_size import get_terminal_size as _get_terminal_size
再这行语句下添加:
from shutil_backports import get_terminal_size as _get_terminal_size
最后,要是这样子的:
except ImportError:
#use backport on Python 2
#from backports.shutil_get_terminal_size import get_terminal_size as _get_terminal_size
from shutil_backports import get_terminal_size as _get_terminal_size
保存后,就可以jupyter notebook就可以正确运行了。个人推测还是Python版本问题,如果用python3的话,应该就没有这种问题了。
 
本文永久更新地址:http://www.linuxdiyf.com/linux/29974.html