Traitements ligne de commande en python

Fermé
voth - 31 mars 2006 à 10:46
sebsauvage Messages postés 32893 Date d'inscription mercredi 29 août 2001 Statut Modérateur Dernière intervention 21 octobre 2019 - 31 mars 2006 à 15:35
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 32893 Date d'inscription mercredi 29 août 2001 Statut Modérateur Dernière intervention 21 octobre 2019 15 655
31 mars 2006 à 11:01
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
ok merci je teste!!
a+
:)
0
sebsauvage Messages postés 32893 Date d'inscription mercredi 29 août 2001 Statut Modérateur Dernière intervention 21 octobre 2019 15 655
31 mars 2006 à 15:35
J'ai mis des exemples avec getopt et optparse là:
https://sebsauvage.net/python/snyppets/#parsing_cmdline
0