Como criar um pacote Python e publicá-lo

Criar e publicar um pacote Python permite que você compartilhe seu código com a comunidade Python mais ampla. Neste guia, percorreremos as etapas para criar um pacote Python e publicá-lo no Python Package Index (PyPI), onde outros podem instalá-lo e usá-lo facilmente.

Configurando seu projeto

Antes de começar, certifique-se de ter o Python instalado no seu sistema. Você também precisará instalar os pacotes setuptools e wheel se ainda não o fez:

pip install setuptools wheel

Criando a estrutura do pacote

Crie um novo diretório para seu projeto de pacote. Dentro desse diretório, crie a seguinte estrutura:

your_package/
    your_package/
        __init__.py
        module1.py
        module2.py
    tests/
        __init__.py
        test_module1.py
    setup.py
    README.md
    LICENSE

Aqui está uma breve visão geral desses arquivos:

  • your_package/__init__.py: Marca o diretório como um pacote Python.
  • your_package/module1.py e your_package/module2.py: Seus módulos de pacote.
  • tests/: Diretório para os casos de teste do seu pacote.
  • setup.py: O script de construção para seu pacote.
  • README.md: Um arquivo que explica o que seu pacote faz.
  • LICENSE: Arquivo de licença do seu pacote.

Escrevendo o script de configuração

O arquivo setup.py é essencial para definir os metadados e dependências do seu pacote. Aqui está um exemplo básico:

from setuptools import setup, find_packages

setup(
    name='your_package',
    version='0.1.0',
    packages=find_packages(),
    install_requires=[
        # List your package dependencies here
    ],
    description='A brief description of your package',
    long_description=open('README.md').read(),
    long_description_content_type='text/markdown',
    url='https://github.com/yourusername/your_package',
    author='Your Name',
    author_email='your.email@example.com',
    license='MIT',
)

Criando um arquivo README

O arquivo README.md deve fornecer uma visão geral do seu pacote, incluindo como instalá-lo e usá-lo. Aqui está um exemplo:

# Your Package

A brief description of your package.

Instalação

pip install your_package

Uso

import your_package

# Example usage

Construindo o pacote

Navegue até o diretório do seu projeto e execute o seguinte comando para compilar seu pacote:

python setup.py sdist bdist_wheel

Este comando cria arquivos de distribuição no diretório dist/.

Publicação no PyPI

Para publicar seu pacote, você precisa de uma conta no PyPI. Se você não tiver uma, crie-a em PyPI.

Em seguida, instale o pacote twine:

pip install twine

Use twine para enviar seu pacote para o PyPI:

twine upload dist/*

Você será solicitado a informar seu nome de usuário e senha do PyPI. Após um upload bem-sucedido, seu pacote estará disponível no PyPI.

Conclusão

Parabéns! Agora você criou e publicou seu pacote Python. Outros podem instalá-lo usando pip, e você pode continuar a atualizá-lo e melhorá-lo. Lembre-se de manter seu pacote atualizando o número da versão e enviando novos lançamentos conforme você faz alterações.