68

TAB 补全在 iPython 终端中运行良好,但在 Firefox 浏览器中不行。

到目前为止,我尝试过但失败了,

1)。运行命令$ sudo easy_install readline

然后将.egg文件写入/usr/local/lib/python2.7/dist-packages/readline-6.2.4.1-py2.7-linux-x86_64.egg,

但是 TAB 完成在 Jupyter Notebook 中仍然不起作用。

2)。也试图找到定位ipython_notebook_config.py or ipython_config.py,但失败了。

我使用 Python 3.5 和 iPython 4.0.0。两者都安装在 Ubuntu 15.10 中 /usr/share/anaconda3/bin/ipython

任何帮助,将不胜感激!

4

19 回答 19

120

这是一个已知问题,绝地就是问题所在。尝试执行:

pip3 install jedi==0.17.2

https://github.com/jupyter/notebook/issues/2435

于 2020-12-30T21:01:06.360 回答
38

我的问题是我尝试在同一个单元格中调用自动完成和导入。由于导入的东西尚未初始化,自动完成功能不起作用。

我需要的只是调用新单元格中的对象 在此处输入图像描述

UPD:或者只在同一个单元格中运行一次程序来初始化导入

于 2016-02-01T09:41:53.780 回答
24

我刚刚安装了最新的 JEDI 然后帮我解决了这个问题,这是使用 Anaconda 时的命令:

conda install -c anaconda jedi

或者你可能需要试试这个,把这行复制到你的 jupyter notebook 的顶部:

%config Completer.use_jedi = False
于 2021-01-09T21:15:57.607 回答
21
%config Completer.use_jedi = False

此命令有帮助,但我们需要一次又一次地将其添加到所有笔记本中。

于 2021-01-10T08:00:33.257 回答
11

你可以加

%config IPCompleter.greedy=True

在 Jupyter Notebook 的第一个框中。

于 2019-03-08T19:35:01.230 回答
6

我遇到了类似的问题,不幸的是无法对帖子发表评论,因此我在这里添加了一个对我有用的简单解决方案。我使用 conda 和conda list显示我正在运行 jedi-0.18.0。我使用了命令conda install jedi==0.17.2。这很快解决了我的 conda 环境的问题。

附加说明:我通常使用 jupyter-lab,并没有看到生成的错误消息。通过切换到 jupyter notebook,我看到了以下错误:

[IPKernelApp] 错误 | 消息处理程序中的异常:回溯(最近一次调用最后一次):文件“D:\apps\miniconda\envs\pydata-book\lib\site-packages\ipykernel\kernelbase.py”,第 265 行,在 dispatch_shell 中产生 gen.maybe_future (handler(stream, idents, msg)) 文件“D:\apps\miniconda\envs\pydata-book\lib\site-packages\tornado\gen.py”,第 762 行,运行值 = future.result()文件“D:\apps\miniconda\envs\pydata-book\lib\site-packages\tornado\gen.py”,第 234 行,在包装中产生 = ctx_run(next, result) 文件“D:\apps\miniconda\ envs\pydata-book\lib\site-packages\ipykernel\kernelbase.py",第 580 行,在 complete_request 匹配 = yield gen.maybe_future(self.do_complete(code, cursor_pos)) 文件“D:\apps\miniconda\envs \pydata-book\lib\site-packages\ipykernel\ipkernel.py",第 356 行,jedi _compute_type_timeout/1000):文件“D:\apps\miniconda\envs\pydata-book\lib\site-packages\IPython\core\completer.py”,第 1858 行,在 _completionsmatched_text,matches,matches_origin,jedi_matches = self ._complete(文件“D:\apps\miniconda\envs\pydata-book\lib\site-packages\IPython\core\completer.py”,第 2026 行,在 _complete 完成 = self._jedi_matches(文件“D:\apps \miniconda\envs\pydata-book\lib\site-packages\IPython\core\completer.py",第 1369 行,在jedi_matches 中解释器 = jedi .Interpreter( 文件 "D:\apps\miniconda\envs\pydata-book\ lib\site-packages\jedi\api_init .py ",第 725 行,在init super(). init (code, environment=environment, TypeError: init() 得到了一个意外的关键字参数“列”

我强调了几条绝地信息,但这一切都强化了这是与安装的绝地版本有关的问题。

于 2021-01-18T14:02:22.640 回答
4

就我而言,在运行之后pip install pyreadline,我需要在完成工作之前重新执行 Jupyter 中的所有行。我一直想知道为什么它适用于 IPython 而不是 Jupyter。

于 2016-11-10T11:58:55.190 回答
4

就我而言,我在 Debian Linux 上安装了 miniconda,很可能与 Debian 中包含的以前的 Python 有问题。以下几行解决了我的问题:

conda update conda
conda update --all

解决方案是根据我在终端中的 IPython 编写后出现的错误从这里np.<tab>获取的:

No such file or directory: '/home/user/miniconda3/lib/python' 
于 2017-05-24T20:27:30.597 回答
3

上面 Sagnik 的答案(2020 年 12 月 20 日)适用于 Windows 10。

pip3 安装绝地==0.17.2

[对不起,我将其发布为答案而不是评论。我还没有发表评论的权限。]

于 2021-01-10T05:06:31.790 回答
2

我发现的解决方法是将中间结果分配给临时变量。然后在单独的单元格中,使用临时变量上的选项卡进行自动完成。

temp = pd. 描述

温度。标签

在此处输入图像描述

于 2019-03-12T20:07:07.920 回答
2

我有同样的问题,使用解决

conda install -c anaconda jedi
于 2021-03-13T13:01:38.320 回答
1

我在 Windows pc 中的 conda 虚拟环境下遇到了同样的问题,将绝地降级到 0.17.2 版本为我解决了这个问题。

康达安装绝地==0.17.2

于 2021-05-29T14:26:45.667 回答
0

创建一个新的环境变量帮助我解决了这个问题。

使用environments.txt内容.conda作为路径。

于 2020-08-08T09:56:32.183 回答
0

我为这个问题找到的最佳解决方法是创建一个新环境。如果您使用 Anaconda,只需创建一个新环境即可解决问题。当然,您必须重新安装一些库,但这一切都是值得的。

于 2020-05-15T01:45:33.363 回答
0

尝试下面讨论的命令here

pip install -U ipython==7.20

于 2021-02-10T14:07:30.683 回答
0

面临同样的问题,对我来说,以下工作

conda install -c anaconda jedi
于 2019-11-12T12:42:35.200 回答
0

正如五年前提出的问题一样,当时的答案可能有所不同......但如果今天有人用谷歌搜索,我想加两分钱:用户 Sagnik 的答案和更多以上对我有用。

要补充的一件事是,如果运行 anaconda,你可以做我所做的:简单

  • 启动 anaconda-navigator 软件,
  • 在我的环境中找到 jedi 包,
  • 点击绝地右侧的小复选框
  • 在“标记为特定版本安装”下,选择 0.17.2

重新启动内核后一切正常:)

于 2021-01-26T08:30:25.660 回答
0

F.wo.huang 对 OP 的评论在我的 anaconda 环境中对我有用:

condo update readline
于 2020-08-01T00:01:41.017 回答
0

我在使用 miniconda 时遇到了同样的问题,我切换到 anaconda,这似乎已经解决了这个问题。PS。我已经尝试了在网上可以找到的所有内容,但除了切换到 anaconda 之外,没有任何解决方法。

于 2020-08-23T06:20:52.060 回答