web-dev-qa-db-fra.com

Comment puis-je obtenir la complétion de tabulation dans l'interpréteur interactif Python?

J'utilise souvent l'interpréteur interactif de Python 3000, mais il manque le côté pratique de la complétion par des tabulations, à laquelle je suis habitué depuis ipython, qui n'est pas disponible pour Python 3.x.

Comment puis-je activer la complétion par tabulation dans chacun d'eux, 2.6 et 3.x?

14
Stefano Palazzo

Commencez par créer un nouveau fichier appelé _.pythonstartup.py_ dans votre répertoire personnel. Mettez le script suivant dedans:

_try:
    import readline
except ImportError:
    print("Module readline not available.")
else:
    import rlcompleter
    readline.parse_and_bind("tab: complete")
_

Les parenthèses entourant la chaîne garantissent son fonctionnement avec Python 2 et Python 3.

Chaque fois que l'interpréteur interactif est démarré, il exécute un script défini dans _$PYTHONSTARTUP_, s'il en existe un. Pour le configurer pour exécuter le script ci-dessus, tapez

_export PYTHONSTARTUP="~/.pythonstartup.py"
_

Vous devriez écrire cette ligne dans votre fichier .bashrc_ OU _.bash_profile , afin qu'elle soit automatiquement exécutée lorsqu'un nouveau shell est démarré.

17
Stefano Palazzo