Comment créer un package Python et le publier

La création et la publication d'un package Python vous permettent de partager votre code avec la communauté Python au sens large. Dans ce guide, nous allons parcourir les étapes de création d'un package Python et de sa publication sur Python Package Index (PyPI), où d'autres personnes peuvent facilement l'installer et l'utiliser.

Configurer votre projet

Avant de commencer, assurez-vous que Python est installé sur votre système. Vous devrez également installer les packages setuptools et wheel si ce n'est pas déjà fait:

pip install setuptools wheel

Création de la structure du package

Créez un nouveau répertoire pour votre projet de package. Dans ce répertoire, créez la structure suivante:

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

Voici un bref aperçu de ces fichiers:

  • your_package/__init__.py: marque le répertoire comme un package Python.
  • votre_package/module1.py et votre_package/module2.py: vos modules de package.
  • tests/: Répertoire pour les cas de test de votre package.
  • setup.py: Le script de construction de votre package.
  • README.md: Un fichier qui explique ce que fait votre package.
  • LICENSE: Le fichier de licence de votre package.

Rédaction du script d'installation

Le fichier setup.py est essentiel pour définir les métadonnées et les dépendances de votre package. Voici un exemple simple:

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

Création d'un fichier README

Le fichier README.md doit fournir un aperçu de votre package, notamment comment l'installer et l'utiliser. Voici un exemple:

# Your Package

A brief description of your package.

Installation

pip install your_package

Usage

import your_package

# Example usage

Création du package

Accédez au répertoire de votre projet et exécutez la commande suivante pour créer votre package:

python setup.py sdist bdist_wheel

Cette commande crée des archives de distribution dans le répertoire dist/.

Publication sur PyPI

Pour publier votre package, vous avez besoin d'un compte sur PyPI. Si vous n'en avez pas, créez-en un sur PyPI.

Ensuite, installez le package twine:

pip install twine

Utilisez twine pour télécharger votre package sur PyPI:

twine upload dist/*

Vous serez invité à saisir votre nom d'utilisateur et votre mot de passe PyPI. Après un téléchargement réussi, votre package sera disponible sur PyPI.

Conclusion

Félicitations ! Vous avez maintenant créé et publié votre package Python. D'autres personnes peuvent l'installer à l'aide de pip, et vous pouvez continuer à le mettre à jour et à l'améliorer. N'oubliez pas de maintenir votre package en mettant à jour le numéro de version et en téléchargeant les nouvelles versions au fur et à mesure que vous apportez des modifications.