Traitements ligne de commande en python

voth -  
sebsauvage Messages postés 33415 Statut Modérateur -
Bonjour!
je voudrais analyser le ligne de commande suivante grace à une expressions régulières:
script.py --arg1 --arg2
avec:
arg1 ={val1 |val2 |val3} obligé
et
arg2={val4} facultatif

voilà mon expression mais elle marche po:
re.search("([--])(val1 | val2 | val3)( | \s--val4)", commande ):
vous voyez pourquoi?

merci
A voir également:

3 réponses

sebsauvage Messages postés 33415 Statut Modérateur 15 663
 
Arg !

Je ne te conseille pas du tout de parser toi-même args.
C'est une très mauvais idée.

Il y a deux modules qui font le boulot pour toi, et qui le font bien:
getopt et optparse.


optparse est le nouveau module (censé être plus puissant), mais j'ai encore une préférence pour getopt.
0
voth
 
ok merci je teste!!
a+
:)
0
sebsauvage Messages postés 33415 Statut Modérateur 15 663
 
J'ai mis des exemples avec getopt et optparse là:
https://sebsauvage.net/python/snyppets/#parsing_cmdline
0