'IPython and Jupyter autocomplete not working

I am very new to this and don't know why the autocomplete is not working. I tried modifying the iPython config file, installed readline, but still nothing.



Solution 1:[1]

A possible reason a user may believe that autocomplete is not working may be that autocomplete is just taking too long. Circa 2020-11-27 this is particularly true for Pandas when operating with jedi in a Jupiter notebook environment.

The issue can be solved by using the following magic which deactivates jedi

%config Completer.use_jedi = False

For a deeper discussion follow the this thread and the links therein.

Solution 2:[2]

the current Ipython with the Jupyter notebook doesn't require jedi.. So you have to just uninstall it with the following command.

pip uninstall jedi --yes

Solution 3:[3]

Seems like installing a specific version of jedi worked for me:

!pip install --upgrade jedi==0.17.2

Solution 4:[4]

Installing:

C:> pip install pyreadline

works fine, as it was suggested in an older post

Solution 5:[5]

Ipython 6+ now has jedi integration built in.

update Ipython, and install jedi:

pip install ipython --upgrade
pip install jedi

If you are using Anaconda / conda:

$> conda update jupyter --update-dependencies
$> conda install jedi

Solution 6:[6]

just below the Python logo there is a button saying

not trusted

click on it and set it as trusted notebook.

Solution 7:[7]

I use JupyterLab 3.0.6. I have ipython 7.19.0 and jedi 0.18 installed. As @DaveHalter indicated, better than <% config Completer.use_jedi = False> is to use the previous version of the jedi <pip install jedi == 0.17.2>. In 2021-01-31 it worked perfectly for me.

Solution 8:[8]

If you are using jedi=0.18 with ipython=7.19 try this in your environment:

pip install -U ipython==7.20

see this github discussion.

Solution 9:[9]

If you tried to install tabnine with the juptyerlab extension manager, type in

pip uninstall jupyterlab_tabnine

in a shell. When you still get the problem, delete the folder

%appdata%\Python\share\jupyter\labextensions\@tabnine\

this worked for me

Solution 10:[10]

install jupyter contrib nbextensions by running

pip install jupyter_contrib_nbextensions

Next install js and css file for jupyter by running

jupyter contrib nbextension install --user

and at the end run,

jupyter nbextension enable hinterland/hinterland

The output of last command will be

Enabling notebook extension hinterland/hinterland...
      - Validating: OK

I refer from this: How to get autocomplete in jupyter notebook without using tab?