[pyar] optparse con opciones duplicadas.

Leonardo M. Rocha leo.m.rocha en gmail.com
Mie Abr 6 05:28:13 ART 2011


>> El 5 de abril de 2011 22:27, Joaquin Sorianello <joac en joac.com.ar>
>> escribió:
>>>
>>> On 04/05/2011 09:55 PM, Lucas Liendo wrote:
>>>>
>>>> Si ya se que parece no tener sentido, pero es lo que necesito :P....la
>>>> cosa es mas o menos asi, quiero cargar uno o mas valores (-p) con sus
>>>> respectivos parametros (-a), es decir lo comun es que haya 1 solo -p y un
>>>> solo -a, lo cual es valido, pero tambien necesito que se permita mas de 1
>>>> opcion, lo que necesito hacer es cargar una serie de pequeños binarios en
>>>> ciertas partes de una misma lista (por eso es que no esta bien llamar varias
>>>> veces al script con distintos valores como me comentaste...), por ejemplo :
>>>> /path/to/file lo cargo a partir de 0x100, /path/to/another/file/ lo cargo en
>>>> 0x234 y asi siguiendo...me parece que no me queda otra alternativa que la de
>>>> las comas que mencione antes, no ?

Yo lo que estaba haciendo era pasar un string:

python test.py -p "/some/path/to/file, /some/path/to/other/file,
/some/path/to/another/file"  -a "0x100 | 0x101; 0x102"


Asumiendo que mi definicion de -p es:
parser.add_option('-p', '--path', action='store', type='string', dest='path',
    help='Aditional paths to look for the python modules, will be appended to
    sys.path . For multiple paths, write all in a simple string begining and
    ending with "path1 path2,     path3; path4:  " .
    NOTE: a single path MUST NOT HAVE SPACES')

y despues le hacia un pequenio (perdon no tengo enie ni acentos) parsing

if options.path is not None:
    #parse the path
    m_path = m_path + options.path.replace(':',' ').replace(';',' ').split()

y lo mismo para -a

No se si es muy limpio pero me funcionaba bastante lindo cuando tenia
que armar un script que llamara al programa muchas veces con muchos
sets de parametros distintos



More information about the pyar mailing list