Les bases d’argparse
Analyser les arguments de la ligne de commande
Les bases d’argparse est une leçon Python Academy gratuite sur CoddyKit. Ceci est la leçon 1 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Python Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Python Academy comprend 4 leçons au total.
Pourquoi argparse ?
Le module argparse (bibliothèque standard) permet de créer des interfaces en ligne de commande conviviales. Il analyse les arguments, valide leurs types et génère automatiquement le texte d'aide.
import argparse
parser = argparse.ArgumentParser(description='A demo tool')
print(type(parser).__name__)Créer un analyseur
Commencez par créer un ArgumentParser. La description apparaît dans l'aide générée automatiquement.
import argparse
parser = argparse.ArgumentParser(description='Greet a user')
print('parser ready')Arguments positionnels
add_argument('name') définit un argument positionnel obligatoire. Nous transmettons ici une liste à parse_args afin qu'il s'exécute sans véritable ligne de commande.
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('name')
args = parser.parse_args(['Alice'])
print('Hello,', args.name)Arguments facultatifs
Les noms commençant par -- correspondent à des options facultatives. Fournissez une default pour le cas où l'utilisateur ne les indique pas.
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('--greeting', default='Hi')
args = parser.parse_args(['--greeting', 'Hey'])
print(args.greeting)
print(parser.parse_args([]).greeting)Arguments typés
Utilisez type=int (ou un nombre à virgule, par exemple) pour qu'argparse convertisse et valide la valeur. Une entrée incorrecte produit une erreur claire.
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('--count', type=int, default=1)
args = parser.parse_args(['--count', '5'])
print(args.count * 2)Options booléennes
action='store_true' crée une option désactivée par défaut et activée lorsqu'elle est présente, ce qui convient parfaitement aux options telles que --verbose.
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('--verbose', action='store_true')
print(parser.parse_args(['--verbose']).verbose)
print(parser.parse_args([]).verbose)Noms courts et longs
Donnez à un argument une forme courte et une forme longue, comme -n et --name. Les deux définissent le même attribut.
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('-n', '--name', default='world')
print(parser.parse_args(['-n', 'Sam']).name)Choix
Limitez les valeurs autorisées avec choices. argparse rejette toute valeur qui ne figure pas dans la liste.
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('--mode', choices=['fast', 'slow'], default='fast')
print(parser.parse_args(['--mode', 'slow']).mode)Plusieurs valeurs avec nargs
nargs='+' rassemble une ou plusieurs valeurs dans une liste, ce qui est idéal pour accepter plusieurs entrées à la fois.
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('files', nargs='+')
args = parser.parse_args(['a.txt', 'b.txt', 'c.txt'])
print(args.files)Options obligatoires et aide
Ajoutez required=True pour rendre une option facultative obligatoire, et help= pour la documenter dans l'écran d'utilisation généré.
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('--id', required=True, type=int, help='record id')
args = parser.parse_args(['--id', '7'])
print('id is', args.id)Un petit outil complet
En réunissant ces éléments — une entrée positionnelle, une option typée et une option — vous obtenez une petite CLI bien réelle.
import argparse
parser = argparse.ArgumentParser(description='Repeat a message')
parser.add_argument('message')
parser.add_argument('--times', type=int, default=1)
parser.add_argument('--shout', action='store_true')
args = parser.parse_args(['hello', '--times', '2', '--shout'])
text = args.message.upper() if args.shout else args.message
for _ in range(args.times):
print(text)Vérification rapide
Vérifiez votre compréhension de argparse.
Récapitulatif
Vous avez appris les bases d'argparse :
ArgumentParseravec des arguments positionnels et des arguments--optional.type,default,choicesetrequiredvalident les entrées.action='store_true'pour les options ;nargspour les listes.- Le texte d'aide est généré automatiquement.
Suite : les sous-commandes et une gestion plus riche des options.
Questions Fréquemment Posées
La leçon « Les bases d’argparse » est-elle gratuite ?
Oui — le texte complet de « Les bases d’argparse » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Python Academy, passe à CoddyKit PRO. Le cours Python Academy comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Les bases d’argparse » ?
Analyser les arguments de la ligne de commande Tu pratiques Python Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Python Academy ?
Aucune expérience préalable n'est requise. Python Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 4.
Combien de temps prend la leçon « Les bases d’argparse » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Python Academy ?
Oui. Chaque leçon Python Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Les bases d’argparse
- Sous-commandes et options
- La bibliothèque Click
- Sortie riche dans le terminal