Comment utiliser les arguments de ligne de commande en Python ?

Formateur Python en ligne pour débutants

Apprenez Python facilement sans surcharge théorique. Résolvez des tâches pratiques avec vérification automatique et écrivez du code directement dans le navigateur.

Start Course

Les bases des arguments de ligne de commande en Python

La gestion des arguments de ligne de commande est une compétence fondamentale pour développer des scripts Python pratiques et flexibles. Au lieu de coder en dur des données dans le programme, les développeurs peuvent passer des paramètres directement au lancement de l'application. En Python, le module argparse, inclus dans la bibliothèque standard, est l'outil le plus utilisé pour traiter ces arguments de manière puissante et structurée.

Pourquoi utiliser les arguments de ligne de commande ?

L'utilisation d'arguments en ligne de commande offre de nombreux avantages aux développeurs Python :

  • Flexibilité accrue du programme en permettant de modifier son comportement sans toucher au code source
  • Possibilité de contrôler le comportement du programme sans recompilation
  • Automatisation simplifiée des tâches et création d'outils en ligne de commande (CLI)
  • Intégration facile dans des pipelines et des processus CI/CD
  • Tests simplifiés du programme avec différents paramètres

Exemples de programmes utilisant des arguments en ligne de commande

De nombreux outils populaires exploitent les arguments de ligne de commande :

  • Gestionnaires de paquets (pip, apt, yarn)
  • Outils de manipulation de fichiers (tar, zip, rsync)
  • Systèmes de build (make, cmake, gradle)
  • Outils de développement (git, docker, kubectl)
  • Scripts personnalisés pour automatiser des workflows

Importation et configuration du module argparse

Le module argparse est intégré à la bibliothèque standard de Python depuis les versions 2.7 et 3.2. Aucune installation supplémentaire n'est nécessaire.

import argparse

Création d'un analyseur de base

Pour commencer, il faut créer une instance de la classe ArgumentParser :

parser = argparse.ArgumentParser(description="Description du programme")

Premier exemple d'utilisation d'argparse

Voici un script simple qui demande un nom d'utilisateur et affiche un message personnalisé :

import argparse

parser = argparse.ArgumentParser(description="Programme de salutation simple")
parser.add_argument("name", help="Nom de l'utilisateur")
args = parser.parse_args()

print(f"Bonjour, {args.name} !")

Le script se lance de la manière suivante :

python script.py Jean

Résultat de l'exécution :

Bonjour, Jean !

Types d'arguments dans argparse

Arguments obligatoires

Les arguments obligatoires sont des paramètres sans lesquels le programme ne peut pas être exécuté. Ils sont définis sans préfixe et doivent être fournis par l'utilisateur.

parser.add_argument("filename", help="Nom du fichier à traiter")
parser.add_argument("output_dir", help="Répertoire de sauvegarde des résultats")

Arguments optionnels

Les arguments optionnels commencent généralement par un tiret simple (-) pour la forme courte ou un double tiret (--) pour la forme longue. Ils ajoutent des fonctionnalités supplémentaires au programme.

parser.add_argument("-v", "--verbose", help="Afficher les informations détaillées", action="store_true")
parser.add_argument("-o", "--output", help="Fichier de sauvegarde des résultats")

Gestion des types de données des arguments

Par défaut, tous les arguments sont traités comme des chaînes de caractères. Pour spécifier un autre type de données, on utilise le paramètre type :

parser.add_argument("number", type=int, help="Entrez un nombre entier")
parser.add_argument("price", type=float, help="Prix du produit")
parser.add_argument("enabled", type=bool, help="Activer la fonction")

Lors de la transmission d'un

Blogs

Book Recommendations