wake-up-neo.net

Die TAB-Vervollständigung funktioniert in Jupyter Notebook nicht, im iPython-Terminal jedoch einwandfrei

Die TAB-Vervollständigung funktioniert im iPython-Terminal, nicht jedoch im Firefox-Browser.

Bisher hatte ich versucht, aber gescheitert,

1). führe einen Befehl aus $ Sudo easy_install readline,

dann wurde die .Egg-Datei in /usr/local/lib/python2.7/dist-packages/readline-6.2.4.1-py2.7-linux-x86_64.Egg, geschrieben

die TAB-Vervollständigung funktioniert in Jupyter Notebook jedoch immer noch nicht.

2). habe auch versucht, ipython_notebook_config.py or ipython_config.py zu finden, aber es ist fehlgeschlagen.

Ich verwende Python 3.5 und iPython 4.0.0. Und beide sind in Ubuntu 15.10 installiert /usr/share/anaconda3/bin/ipython.

Jede Hilfe wäre dankbar!

25
F.wo.huang

Mein Problem bestand darin, dass ich versuchte, Autocomplete aufzurufen und in dieselbe Zelle zu importieren. Da das importierte Objekt noch nicht initialisiert wurde, funktioniert die automatische Vervollständigung nicht.

Alles was ich brauche ist ein Aufruf des Objekts in einer neuen Zelle enter image description here

UPD: oder führen Sie das Programm einfach einmal in derselben Zelle aus, um den Import zu initialisieren

30
shurik2533

In meinem Fall nach dem Ausführen von pip install pyreadline, Ich musste alle Zeilen in Jupyter erneut ausführen, bevor der Abschluss funktionierte. Ich habe mich immer wieder gefragt, warum es bei IPython funktioniert, aber nicht bei Jupyter.

3
M.abr

In meinem Fall habe ich miniconda unter Debian Linux installiert und hatte höchstwahrscheinlich ein Problem mit dem vorherigen Python, das in Debian enthalten war. Die folgenden Zeilen lösten mein Problem:

conda update conda
conda update --all

Die Lösung stammt aus hier basierend auf dem Fehler, den ich in IPython im Terminal hatte, nachdem ich np.<tab>:

No such file or directory: '/home/user/miniconda3/lib/python' 
3
keiv.fly

Die Problemumgehung, die ich gefunden habe, besteht darin, das Zwischenergebnis einer temporären Variablen zuzuweisen. Anschließend in einer separaten Zelle die Registerkarte für die temporäre Variable für die automatische Vervollständigung zu verwenden.

temp = pd.Description

temp. [~ # ~] tab [~ # ~]

enter image description here

1
Ashish Anand

du kannst hinzufügen

% config IPCompleter.greedy = Wahr

in der ersten Box Ihres Jupyter Notebooks.

1
ruedi