Onde os pacotes Python são instalados

Vaibhhav Khetarpal 10 outubro 2023
  1. Use o comando pip para listar os pacotes instalados
  2. Use o comando conda para listar os pacotes instalados localmente
  3. Use o comando python para listar os pacotes instalados
  4. Use o módulo distutils.sysconfig para listar os pacotes instalados
  5. Use o módulo sysconfig para listar os pacotes instalados
Onde os pacotes Python são instalados

Um pacote em Python pode ser definido como um diretório que contém arquivos Python. Esses arquivos geralmente são módulos Python.

Conforme o programa fica maior e mais complexo, módulos semelhantes são posicionados em um pacote, o que ajuda a tornar o programa mais fácil de gerenciar e ter melhor legibilidade. Essa abordagem costuma ser chamada de Programação Modular, e os pacotes ajudam a alcançá-la.

O arquivo __init__.py deve estar contido no diretório para que o Python possa considerá-lo como um pacote. Esse arquivo geralmente contém o código de inicialização do pacote, mas pode ser deixado em branco.

Este tutorial discutirá diferentes métodos para encontrar os diretórios nos quais os pacotes Python estão instalados.

Use o comando pip para listar os pacotes instalados

Em Python, os pacotes podem ser instalados tanto global quanto localmente.

Um pacote, quando instalado globalmente, está disponível para todos os usuários do sistema. O mesmo pacote, quando instalado localmente, só estará disponível para o usuário que o instalou manualmente.

Por padrão, o comando pip instala os pacotes globalmente.

O código a seguir usa o comando pip para listar os pacotes instalados globalmente.

# we can also use "pip list command"
pip freeze

Embora, por padrão, o comando pip instale pacotes globalmente, os pacotes que foram manualmente instalados localmente também podem ser vistos usando este comando.

O código a seguir usa o comando pip para listar os pacotes instalados localmente.

# we can also use "pip list --user"
pip freeze --user

Use o comando conda para listar os pacotes instalados localmente

Este método funciona apenas para programadores que trabalham no Anaconda IDE. É possível listar o pacote instalado localmente em um ambiente conda. Para executar isso, só temos que escrever uma única linha de código no prompt do Anaconda.

O código a seguir usa conda para listar os pacotes instalados localmente.

conda list

Use o comando python para listar os pacotes instalados

O comando python pode ser usado para localizar os diretórios do site do pacote.

Pacotes de sites globais

Os pacotes globais do site estão listados em sys.path.

O código a seguir usa o comando python para listar os pacotes instalados globalmente.

python -m site

O módulo site também pode ser usado junto com o comando python para obter uma lista de pacotes melhor e mais concisa. Este método usa o getsitepackages() do módulo site.

O código a seguir usa o comando python junto com o módulo site para listar os pacotes instalados globalmente.

python -c 'import site; print(site.getsitepackages())'

Observe que a função getsitepackages() não está disponível com virtualenv.

Pacotes instalados localmente

Os pacotes locais são instalados no diretório de pacotes de sites per-user (PEP 370).

O código a seguir usa o comando python para listar os pacotes instalados localmente.

python -m site --user-site

Use o módulo distutils.sysconfig para listar os pacotes instalados

O pacote distutils pode ser utilizado para fornecer funções para instalar e construir módulos adicionais em uma instalação Python. Nesse caso, ele também pode ser usado para listar os pacotes.

O código a seguir usa o distutils.sysconfig para listar os pacotes instalados globalmente.

python -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())"

A única desvantagem é que nos indica o diretório dos dist-packages ou dos pacotes instalados automaticamente pelo sistema operacional.

Use o módulo sysconfig para listar os pacotes instalados

No Python 3 e superior, o módulo sysconfig está disponível para uso para listar os pacotes instalados.

O módulo sysconfig não deve ser confundido com o submódulo distutils.sysconfig que foi mencionado acima. O último é um módulo totalmente diferente e é deficiente na função get_paths que será usada aqui.

O código a seguir usa o módulo sysconfig para listar os pacotes instalados.

python -c "import sysconfig; print(sysconfig.get_path('purelib'))"

Usamos o caminho purelib aqui, que é onde os pacotes Python padrão são instalados, com a ajuda de ferramentas como pip.

Vaibhhav Khetarpal avatar Vaibhhav Khetarpal avatar

Vaibhhav is an IT professional who has a strong-hold in Python programming and various projects under his belt. He has an eagerness to discover new things and is a quick learner.

LinkedIn

Artigo relacionado - Python Installation