Pierre Roudier wrote:

> This might be very simple, but I can't find an answer in the doco - so
> here I am,
> 
> I'm trying to pass several floats to a single option in a Python script:
> 
> > python my.module.py input=input output=output myoption=0.1,0.2,0.5
> 
> Is there a clever way to declare myoption so that it would parse it as
> some 3 floats? Or do I need to define it as a string and parse it
> manually?

The values in the "options" dictionary returned from the parser()
function are always strings. You can parse the string with:

        myoption = map(float, options['myoption'].split(','))

The option definition in the script should have:

        #% type: double
        #% multiple: yes

This allows g.parser to validate the option syntax, so you can rely
upon the string being in the correct format. If the values have a
fixed range, you can use e.g.:

        #% options: 0.0-1.0

to have the parser check that the values fall within the range.

-- 
Glynn Clements <[email protected]>
_______________________________________________
grass-dev mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/grass-dev

Reply via email to