Onde está localizado um módulo Python no disco?

Às vezes, quando importamos um módulo em Python, surge a curiosidade para ler o código-fonte desse módulo, para descobrir o que aquele código faz realmente. Existe uma forma bem simples de descobrir a localização de um módulo no disco. Após importar um módulo, basta verificar o atributo __file__ do módulo.

>>> import os
>>> print os.__file__
/usr/lib/python2.7/os.pyc

Esse arquivo, cujo caminho é impresso na tela é, na realidade, o arquivo binário contendo o bytecode compilado. Porém, se retirar o c do final do nome do arquivo, teremos o arquivo-fonte (.py). No exemplo acima, podemos ver o código-fonte do módulo em:

/usr/lib/python2.7/os.py

Outro exemplo, se quisermos ver o código-fonte do módulo timeit, fazemos o seguinte:

>>> import timeit
>>> print timeit.__file__
/usr/lib/python2.7/timeit.pyc

O arquivo-fonte então está em:

/usr/lib/python2.7/timeit.py

Também poderíamos procurar pelo módulo dentro da lista sys.path, que contém os caminhos onde o interpretador busca pelos módulos a serem importados.

Um comentário sobre “Onde está localizado um módulo Python no disco?

  1. Pingback: Módulo timeit « Python Help

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s