Arguments de Ligne de Commande Python

Les arguments de ligne de commande Python sont des paramètres d’entrée passés au script lors de leur exécution. Presque tous les langages de programmation fournissent une prise en charge des arguments de ligne de commande. Ensuite, nous avons également des options de ligne de commande pour définir certaines options spécifiques pour le programme.

Arguments de ligne de commande Python

Il existe de nombreuses options pour lire les arguments de ligne de commande Python. Les trois plus courantes sont :

  1. Module Python sys.argv
  2. Module Python getopt
  3. Module Python argparse

Jetons un coup d’œil à un programme simple pour apprendre comment lire et utiliser les arguments de ligne de commande Python.

Module Python sys

Le module Python sys stocke les arguments de ligne de commande dans une liste, que nous pouvons accéder en utilisant sys.argv. C’est une façon très utile et simple de lire les arguments de ligne de commande en tant que chaîne de caractères. Jetons un coup d’œil à un exemple simple pour lire et afficher les arguments de ligne de commande en utilisant le module sys de Python.

import sys

print(type(sys.argv))
print('The command line arguments are:')
for i in sys.argv:
    print(i)

Ci-dessous, l’image illustre la sortie d’une exécution d’échantillon du programme ci-dessus. Il existe de nombreuses autres fonctions utiles dans le module sys, que vous pouvez lire en détail sur le module sys de Python.

Le module getopt de Python

Le module getopt de Python est très similaire au fonctionnement de la fonction C getopt() pour l’analyse des paramètres de ligne de commande. Le module getopt de Python est utile pour l’analyse des arguments de ligne de commande où nous voulons que l’utilisateur saisisse également certaines options. Examinons un exemple simple pour comprendre cela.

import getopt
import sys

argv = sys.argv[1:]
try:
    opts, args = getopt.getopt(argv, 'hm:d', ['help', 'my_file='])
    print(opts)
    print(args)
except getopt.GetoptError:
    # Afficher un message ou faire quelque chose d'utile
    print('Something went wrong!')
    sys.exit(2)

L’exemple ci-dessus est très simple, mais nous pouvons facilement l’étendre pour faire diverses choses. Par exemple, si l’option d’aide est passée, imprimez un message convivial à l’utilisateur et quittez. Ici, le module getopt analysera automatiquement la valeur de l’option et les associera. L’image ci-dessous montre une exécution d’échantillon. Pour en savoir plus, consultez le module getopt de Python.

Le module argparse de Python

Le module argparse de Python est la méthode préférée pour analyser les arguments de la ligne de commande. Il offre de nombreuses options telles que les arguments positionnels, la valeur par défaut des arguments, le message d’aide, la spécification du type de données de l’argument, etc. Dans sa forme la plus simple, nous pouvons l’utiliser comme ci-dessous.

import argparse

parser = argparse.ArgumentParser()
parser.parse_args()

Voici le résultat d’une exécution rapide du script ci-dessus. Le module argparse de Python offre de nombreuses fonctionnalités, vous devriez les lire dans le tutoriel python argparse pour une compréhension claire. C’est tout pour les différentes options permettant de lire et d’analyser les arguments de ligne de commande en Python. Vous devriez décider celle qui correspond à vos besoins spécifiques, puis l’utiliser. Références :

Source:
https://www.digitalocean.com/community/tutorials/python-command-line-arguments