Algo muito útil para quando estamos testando e estudando código Python, é termos um shell interativo que nos forneça completação de nomes de funções/atributos dos módulos/tipos disponíveis em Python. Qual a utilidade disso?
- Possibilita que lembremos daquela funçãozinha cujo nome esquecemos por falta de prática
- Auxilia no estudo, pois é possível conhecermos novas funções existentes nos módulos fornecidos juntamente com o Python, que muitas vezes facilitam várias tarefas em nossos programas
Bom, vamos ao que interessa. Abra em seu editor de textos o arquivo /home/nome_usuário/.pythonrc e cole o seguinte conteúdo dentro deste arquivo. Caso o arquivo não exista, não hesite em criá-lo!
import readline, rlcompleter
readline.parse_and_bind('tab: complete')
del readline, rlcompleter
Por fim, é necessário que você configure sua variável de ambiente PYTHONSTARTUP para possuir como valor o caminho do arquivo .pythonrc. Para isso, coloque em seu arquivo .bashrc o seguinte comando:
export PYTHONSTARTUP=~/.pythonrc
Após isso, abra um shell interativo python e faça um teste (<TAB> significa que você deve pressionar a tecla tab do seu teclado):
import string string.<TAB><TAB>
Pronto, o shell Python deverá lhe mostrar várias opções de funções disponíveis no módulo string. A Figura 1 apresenta o shell python oferecendo opções de completação para o módulo atexit.

Gostei da dica.
Eu a executei, mas o python da minha máquina inicialmente reclamou da codificação do arquivo ,pythonrc. Pois havia colocado alguns comentários com palavras com acentos e cecedilha.
A mensagem de erro era:
“SyntaxError: Non-ASCII character ‘\xc3’ in file /$HOME/.pythonrc
SyntaxError: Non-ASCII character ‘\xc3’ in file $HOME/.pythonrc on line 1, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details”
O auto-completar do TAB não funcionava.
Só consegui resolver esse problema inserindo no início do arquivo .pythonrc a seguinte linha: # -*- coding: UTF-8 -*-
Inté +