Nunca ha sido demasiado de mi agrado, más que nada porque estoy acostumbrado a realizar las cosas como en C/C++ y claro la deformación profesional...
Bueno a lo que íbamos, por un trabajo que he tenido que utilizar python y quería poder dar diferentes opciones al programa. Entonces encontré el siguiente módulo: optparse
Funciona como en el siguiente ejemplo:
#!/usr/bin/python
from optparse import OptionParser
parser = OptionParser()
parser.add_option("-s", "--start", dest="start", help="Ejemplo de opcion", metavar="Start")
parser.add_option("-f", "--finish", dest="finish", help="Otro ejemplo de opcion", metavar="Finish")
(options, args) = parser.parse_args()
if __name__ == "__main__":
if options.start != None:
print "Tenemos opcion en Start", options.start
else:
print "No hay opcion en Start"
if options.finish != None:
print "Tenemos opcion en Finish", options.finish
else:
print "No hay opcion en Finish"
print "En argumentos tenemos", args
Podemos ver en el ejemplo que los parámetros necesarios para añadir una nueva opción son las siguientes:
add_option(opción_corta, opción_larga, atributo_destino, mensaje_de_ayuda, metavar_usado_en_la_ayuda)
Un par de ejecuciones del ejemplo son las siguientes:
[maitesin@Malesero ~]$ ./ejemplo.py -s 12 -f Hola Adios
Tenemos opcion en Start 12
Tenemos opcion en Finish Hola
En argumentos tenemos ['Adios']
[maitesin@Malesero ~]$ ./ejemplo.py -s 12 Adios
Tenemos opcion en Start 12
No hay opcion en Finish
En argumentos tenemos ['Adios']
[maitesin@Malesero ~]$ ./ejemplo.py
No hay opcion en Start
No hay opcion en Finish
En argumentos tenemos []
[maitesin@Malesero ~]$ ./ejemplo.py --help
Usage: ejemplo.py [options]
Options:
-h, --help show this help message and exit
-s Start, --start=Start
Ejemplo de opcion
-f Finish, --finish=Finish
Otro ejemplo de opcion
Espero que os sirva ésto tanto como a mi.
No comments:
Post a Comment