如何在不使用标签的情况下在jupyter笔记本中获得自动完成功能?

phy*_*000 75 python jupyter-notebook

我想在笔记本电脑中获得自动完成功能,即当我输入内容时,会出现一个下拉菜单,其中包含我可能输入的所有可能内容,而无需按下标签按钮.有这样的事吗?

我试过了 :

%config IPCompleter.greedy = True

但这需要按下标签按钮

phy*_*Guy 66

jupyter有一个名为'Hinterland'的扩展名,在输入时会自动显示下拉菜单.还有一些其他有用的扩展.

要安装扩展,您可以按照此github仓库的指南进行操作.要轻松激活扩展,您可能需要使用扩展配置程序.

  • 我已经安装了腹地,它只会自动完成基本的python内容,但不会自动完成模块功能(例如pd,np等)如何让它自动完成那些像pycharm一样? (5认同)
  • 我需要输入什么命令以及在哪里? (3认同)
  • 如果我正在使用运行jupyter Notebook的远程计算机,并且通过浏览器在本地计算机上使用它,那么应该在哪里安装扩展? (2认同)
  • @thebeancounter我仅在本地安装了扩展程序,该扩展程序位于我通过浏览器访问笔记本电脑的计算机上。我在运行jupyter Notebook的远程计算机上未安装任何扩展程序。 (2认同)
  • 对于像我这样不熟悉 Jupyter Notebook 的人,1)按照官方说明安装这些东西:https://jupyter-contrib-nbextensions.readthedocs.io/en/latest/install.html 2)安装浏览器配置器 UI ,如下:https://github.com/Jupyter-contrib/jupyter_nbextensions_configurator 3)在终端中使用命令打开jupyter notebook:`jupyter notebook` (2认同)

小智 17

我建议腹地扩展。

在其他答案中,我找不到如何从 pip 安装它的方法,所以这就是你安装它的方式。

首先,通过运行安装 jupyter contrib nbextensions

pip install jupyter_contrib_nbextensions

接下来通过运行为 jupyter 安装 js 和 css 文件

jupyter contrib nbextension install --user

最后运行,

jupyter nbextension enable hinterland/hinterland

最后一个命令的输出将是

Enabling notebook extension hinterland/hinterland...
      - Validating: OK
Run Code Online (Sandbox Code Playgroud)


Wen*_* Wu 11

即使使用腹地扩展,使用Jupyter Notebook的自动完成功能也是如此微弱。感谢您提供基于深度学习的代码自动完成的想法。我开发了基于TabNine的Jupyter Notebook扩展,该扩展提供了基于深度学习的代码自动完成功能。这是我工作的Github链接:jupyter-tabnine

现在可以在pypi索引上使用。只需发出以下命令,然后使用它即可:)

pip3 install jupyter-tabnine
jupyter nbextension install --py jupyter_tabnine
jupyter nbextension enable --py jupyter_tabnine
jupyter serverextension enable --py jupyter_tabnine
Run Code Online (Sandbox Code Playgroud)

演示

  • 另请注意:TabNine 可能会占用大量内存和 CPU 资源。就我而言,我从 WSL(Ubuntu 18.04)运行 jupyter 笔记本,TabNine 占用约 1.5GB 内存。如果您从任务管理器结束任务,则使用的内存可能会下降到约 200MB,并且 TabNine 将在您下次在 jupyter 笔记本中键入内容时自动启动。更多详细信息请访问 https://github.com/zxqfl/TabNine/issues/43。 (3认同)
  • 如果尝试安装 jupyter 时可能出现“权限被拒绝”错误,只需在 jupyter install 命令中添加“--user”即可。 (2认同)

小智 7

这样%config IPCompleter.greedy=True导入诸如numpy或pandas之类的软件包后,无需执行此操作; import numpy as np import pandas as pd

然后键入,pd.然后点击选项卡按钮,它会弹出所有可能的方法以非常简单直接地使用。


Hea*_*man 6

我正在使用Jupiter Notebook 5.6.0。在这里,要获得自动提示,我只是在输入至少一个字符后按下Tab键。

 **Example:** Enter character `p` and hit Tab.
Run Code Online (Sandbox Code Playgroud)

要在导入的库中获取方法和属性,请使用与Alice相同的Tab键

  import numpy as np

  np. --> Hit Tab key
Run Code Online (Sandbox Code Playgroud)


San*_*mar 6

如上面@physicsGuy所述,您可以使用内地扩展名。简单的步骤即可做到。

使用conda forge频道安装nbextension。只需在conda终端中运行以下命令:

conda install -c conda-forge jupyter_nbextensions_configurator
Run Code Online (Sandbox Code Playgroud)

下一步启用腹地扩展。在conda终端中运行以下命令:

jupyter nbextension enable hinterland/hinterland
Run Code Online (Sandbox Code Playgroud)

就这样,完成了。

  • `启用笔记本扩展的腹地/腹地...-验证:发现问题:-需要吗?X腹地/腹地`这是这样做的错误 (2认同)