Conception de programmes Python en ligne de commande

PythonPythonBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

L'interface de ligne de commande Python, également connue sous le nom d'interface de ligne de commande (CLI), est un moyen d'interagir avec un programme informatique en tapant des commandes dans un terminal ou une invite de commande. Elle permet aux utilisateurs d'exécuter un programme et de lui passer des arguments, ainsi que de recevoir la sortie du programme sous forme de texte. L'interface de ligne de commande est particulièrement utile pour automatiser des tâches, exécuter des scripts et effectuer des opérations avancées ou complexes qui seraient difficiles ou impossibles à effectuer via une interface graphique utilisateur (GUI).

Dans ce laboratoire, nous allons apprendre à utiliser le module argparse pour créer des interfaces de ligne de commande pour nos programmes Python. Nous commencerons par des exemples simples et passerons progressivement à des exemples plus complexes. À la fin de ce laboratoire, vous devriez avoir une bonne compréhension de la manière d'utiliser le module argparse pour créer des interfaces de ligne de commande puissantes pour vos programmes Python.

Objectifs

  • Module argparse
  • Scripts Python

Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/FunctionsGroup(["Functions"]) python(("Python")) -.-> python/ModulesandPackagesGroup(["Modules and Packages"]) python/FunctionsGroup -.-> python/function_definition("Function Definition") python/FunctionsGroup -.-> python/arguments_return("Arguments and Return Values") python/FunctionsGroup -.-> python/default_arguments("Default Arguments") python/FunctionsGroup -.-> python/keyword_arguments("Keyword Arguments") python/FunctionsGroup -.-> python/build_in_functions("Build-in Functions") python/ModulesandPackagesGroup -.-> python/importing_modules("Importing Modules") python/ModulesandPackagesGroup -.-> python/standard_libraries("Common Standard Libraries") subgraph Lab Skills python/function_definition -.-> lab-73{{"Conception de programmes Python en ligne de commande"}} python/arguments_return -.-> lab-73{{"Conception de programmes Python en ligne de commande"}} python/default_arguments -.-> lab-73{{"Conception de programmes Python en ligne de commande"}} python/keyword_arguments -.-> lab-73{{"Conception de programmes Python en ligne de commande"}} python/build_in_functions -.-> lab-73{{"Conception de programmes Python en ligne de commande"}} python/importing_modules -.-> lab-73{{"Conception de programmes Python en ligne de commande"}} python/standard_libraries -.-> lab-73{{"Conception de programmes Python en ligne de commande"}} end

Importation du module Argparse

La première étape pour utiliser le module argparse est de l'importer.

Vous devez créer un fichier Python qui contiendra votre code.

touch my_program.py

Nous pouvons le faire en ajoutant la ligne de code suivante au début de notre script Python :

import argparse

Création d'un objet Analyseur

Une fois que nous avons importé le module argparse, nous pouvons créer un objet analyseur en appelant la fonction ArgumentParser(). Cette fonction prend plusieurs arguments optionnels, mais pour l'instant, nous fournirons simplement une description de notre programme.

parser = argparse.ArgumentParser(description="Une interface de ligne de commande simple.")

Ajout d'arguments

Maintenant que nous avons un objet analyseur, nous pouvons commencer à lui ajouter des arguments. Il existe plusieurs types d'arguments que nous pouvons ajouter, tels que les arguments positionnels et les arguments optionnels. Par exemple, nous pouvons ajouter un argument positionnel comme ceci :

parser.add_argument("name", help="Votre nom")

Et un argument optionnel comme ceci :

parser.add_argument("-n", "--number", help="Nombre de fois pour répéter le message", type=int)

Analyse des arguments

Une fois que nous avons ajouté tous nos arguments, nous pouvons les analyser en appelant la fonction parse_args() de notre objet analyseur. Cette fonction prend aucun argument et renvoie un objet contenant les valeurs de tous nos arguments.

args = parser.parse_args()

Utilisation des arguments

Maintenant que nous avons analysé nos arguments, nous pouvons les utiliser dans notre programme. Par exemple, nous pouvons utiliser l'argument name comme ceci :

print("Bonjour, " + args.name)

Et l'argument optionnel est comme ceci :

print("Bonjour, " + args.name * args.number)

Code complet

Voici le code complet pour le laboratoire qui inclut toutes les étapes décrites ci-dessus :

import argparse

## Création d'un objet analyseur
parser = argparse.ArgumentParser(description="Une interface de ligne de commande simple.")

## Ajout d'arguments
parser.add_argument("name", help="Votre nom")
parser.add_argument("-n", "--number", help="Nombre de fois pour répéter le message", type=int)

## Analyse des arguments
args = parser.parse_args()

## Utilisation des arguments
print("Bonjour, " + args.name * args.number)

Vous pouvez exécuter le script en vous rendant dans le répertoire où se trouve le fichier dans la ligne de commande et en tapant python my_program.py suivi des arguments que vous souhaitez passer au script :

python my_program.py --name "John" --number 3

Cela imprimera "Bonjour, JohnJohnJohn" dans la console.

Sommaire

Dans ce laboratoire, nous avons appris à utiliser le module argparse pour créer une interface de ligne de commande pour un programme Python. Nous avons vu comment importer le module argparse, créer un objet analyseur, ajouter des arguments à l'analyseur, analyser les arguments et les utiliser dans notre programme. Avec ces connaissances, vous devriez être capable de créer des interfaces de ligne de commande puissantes pour vos programmes Python.