Come creare un pacchetto Python e pubblicarlo

Creare e pubblicare un pacchetto Python ti consente di condividere il tuo codice con la più ampia comunità Python. In questa guida, ti guideremo attraverso i passaggi per creare un pacchetto Python e pubblicarlo sul Python Package Index (PyPI), dove altri possono facilmente installarlo e utilizzarlo.

Impostazione del progetto

Prima di iniziare, assicurati di avere Python installato sul tuo sistema. Dovrai anche installare i pacchetti setuptools e wheel se non li hai già:

pip install setuptools wheel

Creazione della struttura del pacchetto

Crea una nuova directory per il tuo progetto di pacchetto. All'interno di questa directory, crea la seguente struttura:

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

Ecco una breve panoramica di questi file:

  • your_package/__init__.py: Contrassegna la directory come pacchetto Python.
  • your_package/module1.py e your_package/module2.py: i moduli del tuo pacchetto.
  • tests/: Directory per i casi di test del pacchetto.
  • setup.py: Lo script di compilazione per il tuo pacchetto.
  • README.md: Un file che spiega a cosa serve il pacchetto.
  • LICENSE: File di licenza del pacchetto.

Scrittura dello script di installazione

Il file setup.py è essenziale per definire i metadati e le dipendenze del tuo pacchetto. Ecco un esempio di base:

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',
)

Creazione di un file README

Il file README.md dovrebbe fornire una panoramica del tuo pacchetto, incluso come installarlo e utilizzarlo. Ecco un esempio:

# Your Package

A brief description of your package.

Installazione

pip install your_package

Utilizzo

import your_package

# Example usage

Creazione del pacchetto

Vai alla directory del tuo progetto ed esegui il seguente comando per creare il tuo pacchetto:

python setup.py sdist bdist_wheel

Questo comando crea archivi di distribuzione nella directory dist/.

Pubblicazione su PyPI

Per pubblicare il tuo pacchetto, hai bisogno di un account su PyPI. Se non ne hai uno, crealo su PyPI.

Quindi, installa il pacchetto twine:

pip install twine

Utilizza twine per caricare il tuo pacchetto su PyPI:

twine upload dist/*

Ti verrà chiesto il tuo nome utente e la tua password PyPI. Dopo un caricamento riuscito, il tuo pacchetto sarà disponibile su PyPI.

Conclusione

Congratulazioni! Ora hai creato e pubblicato il tuo pacchetto Python. Altri possono installarlo usando pip, e tu puoi continuare ad aggiornarlo e migliorarlo. Ricordati di mantenere il tuo pacchetto aggiornando il numero di versione e caricando nuove release man mano che apporti modifiche.