Como posso obter o preenchimento de tabulação no interpretador interativo do Python?

14

Costumo usar o intérprete interativo do Python 3000, mas está faltando a conveniência da conclusão de tabulação que estou acostumado a partir do ipython, que não está disponível para o Python 3.x.

Como faço para ativar a conclusão de tabulação em todos eles, 2.6 e 3.x?

    
por Stefano Palazzo 10.02.2011 / 10:36

1 resposta

17

Primeiro, crie um novo arquivo chamado .pythonstartup.py em seu diretório pessoal. Coloque o seguinte script:

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

Os parênteses ao redor da string garantem que ela funcione com o Python 2 e o Python 3.

Toda vez que o interpretador interativo é iniciado, ele executa um script definido em $PYTHONSTARTUP , se houver um. Para configurá-lo para executar o script acima, digite

export PYTHONSTARTUP=".pythonstartup.py"

Você deve escrever esta linha em seu arquivo .bashrc ou .bash_profile , então que é executado automaticamente quando um novo shell é iniciado.

    
por Stefano Palazzo 10.02.2011 / 10:41