Python argparse
Aller à la navigation
Aller à la recherche
Le module argparse
pour Python permet de traiter les arguments et les options passés en ligne de commande.
Exemple simple
On souhaite avoir un programme qui traite un fichier texte et, soit afficher le résultat sur la sortie standard soit dans un fichier donné en option.
import argparse
parser = argparse.ArgumentParser(description='Translate file')
parser.add_argument('filename', help='xln (text) file')
parser.add_argument('-w', type=argparse.FileType('w', encoding='latin-1'), dest='outfile', help='the file to write')
args = parser.parse_args()
print ("Read form file :",end='')
print (args.filename)
if (args.outfile):
args.outfile.write("Hello world!")
args.outfile.close()
Si on appelle le programme sans aucun paramètre:
usage: myprog.py [-h] [-w OUTFILE] filename
nc-drill.py: error: the following arguments are required: filename
OK je dois fournir un fichier: