Jupyter Notebook自动补全代码功能

nbextensions是Jupyter的一个扩展插件,最常用的就是自动补全代码功能了,不需要tab或空格。

1.安装nbextensions

pip install jupyter_contrib_nbextensions
提示read timeout,这种情况一般是安装源的问题,用-i 直接指定安装源,搞定
pip install jupyter_contrib_nbextensions -i https://pypi.mirrors.ustc.edu.cn/simple/

2.配置nbextension

jupyter contrib nbextension install --user --skip-running-check

3.启用Hinterland

cmd-->jupyter notebook,可以看到nbextension


NBextensions Tab

启用Hinterland

配置好后,依然不能自动补全代码或提示代码,看了dos窗口,报错见下图:


image.png

搜了一下,在stackflow中找到了答案,pip install jedi==0.17.2
Jedi 是一个可以在 IDEs 或者编辑器中使用的 Python 代码自动补齐和静态分析工具,IPython的问题,也有说直接升级或安装下ipython也可以搞定
https://stackoverflow.com/questions/33665039/tab-completion-does-not-work-in-jupyter-notebook-but-fine-in-ipython-terminal

image.png

重启Jupyter Notebook,即可看到自动提示功能


image.png

另,安装Nbextension时候报另外一个错误:
config option 'template_path' not recognized by ……

image.png

原因是nbconvert6.0.0版本以上的某些参数的名称发生了更改,与原先版本不兼容,需要将版本降低到5.6.1(nbconvert是jupyter文件转换命令行工具)
参考链接:https://blog.csdn.net/DTFT_/article/details/111242118
pip install nbconvert==5.6.1 -i https://pypi.mirrors.ustc.edu.cn/simple
重启Jupyter,OK.

你可能感兴趣的:(Jupyter Notebook自动补全代码功能)