HOWTO · Python

Como verificar a versão de um módulo Python

Aprenda a verificar a versão de um pacote Python instalado com importlib.metadata, o atributo __version__ de um módulo, pip show ou pkg_resources.

Nesta página

Para verificar a versão de um pacote instalado a partir do Python, use importlib.metadata.version() com o nome de distribuição do pacote. Para uma verificação no terminal, execute python -m pip show PACKAGE com o interpretador Python cujo ambiente você deseja inspecionar. Os nomes de importação e os nomes de distribuição podem diferir, portanto use o nome indicado nas instruções de instalação do pacote ou nos metadados do pacote.

Use importlib.metadata para obter a versão de uma distribuição instalada

importlib.metadata lê os metadados das distribuições instaladas. Passe um nome de distribuição como requests; o nome que você escreve em uma instrução import nem sempre é o mesmo. Este exemplo imprime o nome e a versão da primeira distribuição retornada pelo ambiente atual:

from importlib import metadata

distributions = list(metadata.distributions())
if distributions:
    distribution = distributions[0]
    print(f"{distribution.metadata['Name']}: {distribution.version}")
else:
    print("No installed distributions found.")
pip: 26.2.1

Para um pacote conhecido, chame metadata.version("requests"). Se o módulo importlib.metadata da biblioteca padrão não estiver disponível no ambiente Python, o backport instalado separadamente usa o caminho de importação importlib_metadata; sua API de consulta também se chama version(). A disponibilidade depende do ambiente, portanto este artigo não pressupõe um limite específico de versão do Python.

Uma falha na consulta pode significar que a distribuição não está instalada no ambiente ativo, que o nome está errado ou que o comando está usando um ambiente Python diferente daquele em que o pacote foi instalado. Verifique o nome da distribuição e o interpretador antes de tirar uma conclusão.

Verifique o atributo __version__ de um módulo quando disponível

Alguns módulos expõem sua versão como uma string __version__. Por exemplo, depois de importar um módulo que fornece o atributo, leia-o com print(module.__version__). Essa é uma verificação conveniente quando o atributo existe, mas não faz parte de um requisito universal para módulos Python. A consulta de metadados da biblioteca padrão acima é mais adequada quando você precisa dos metadados da distribuição instalada pelo nome.

Verifique um pacote com pip show

Use python -m pip show PACKAGE em um terminal para exibir os detalhes de uma distribuição instalada. Este exemplo de comando não é executado aqui. Por exemplo, execute python -m pip show requests. Encontre a linha Version no resultado. Executar o pip como um módulo do Python escolhido ajuda a alinhar o comando ao ambiente desse interpretador; um comando pip simples pode se referir a uma instalação diferente. pip show relata os metadados do pacote e não instala nem atualiza o pacote.

Use pkg_resources para ambientes legados

Em ambientes que usam pkg_resources, importe-o antes de chamar get_distribution(). Passe um nome de distribuição, que pode diferir do nome de importação do módulo. Este exemplo independente verifica a distribuição pip instalada quando pkg_resources está disponível; a API pode estar ausente em alguns ambientes:

try:
    import pkg_resources
except ImportError:
    print("pkg_resources is unavailable in this environment.")
else:
    try:
        print(pkg_resources.get_distribution("pip").version)
    except pkg_resources.DistributionNotFound:
        print("pip is not installed in this environment.")

Esta é uma alternativa legada; para código novo, prefira importlib.metadata quando estiver disponível.