Si hay algo desordenado que me queda siempre son los parsers de linea de comando. Así que se me ocurrió caipyrinha
Que hace caipyrinha? te da un decorador para hacer argumentos de linea de comando a mi criterio… mas facilmente
Aca tienen como instalarlo: http://caipyrinha.readthedocs.org
si lo instalan con este código:
# ex.py
import caipyrinha
parser = caipyrinha.Caipyrinha(prog="Your Program")
parser.add_argument("--version", action='version', version="%(prog)s 0.1")
@parser.callback(exit=0, group="group1")
def first(flags, returns):
'''Execute this option and exit'''
print "bye bye"
@parser.callback(action="store")
def second(flags, returns):
'''set his own return value with his parameter'''
return flags.second
@parser.callback("--third", group="group1")
def no_used_name(flags, returns):
'''you cant use this argument with first'''
print returns.second
import sys
parser(sys.argv[1:])
Tienen este resultado

Aca tienen un link donde lo estoy usando: http://bitbucket.org/leliel12/yatel/src/tip/bin/yatel