[GRASS-dev] Using the pygrass "Mapset.glist" method and a dictionary
Moritz Lennert
mlennert at club.worldonline.be
Fri May 24 00:19:09 PDT 2013
On 23/05/13 21:50, Nikos Alexandris wrote:
> Hi list.
>
> In a Python script, I use the following pygrass method to retrieve a list of
> raster maps:
>
> from grass.pygrass.gis import Mapset
> ..
> landsat_imagery = dict()
> ..
> landsat_imagery['Spectral Bands'] = Mapset().glist('rast', pattern =
> 'B[123457]')
>
> However, whenever the result is empty, i.e. there are no B1, B2 and so on
> named raster maps, running the script fails with the error:
>
>
> landsat_imagery['Spectral Bands'] = Mapset().glist('rast', pattern =
> 'B[123457]')
> TypeError: 'str' object is not callable
>
>
> Running the instructions step-wise, from within ipython, doesn't appear to be
> problematic. What am I missing in this case?
I can't reproduce this:
>>> landsat_imagery = dict()
>>> landsat_imagery
{}
>>> Mapset().glist('rast', pattern = 'B[123457]')
[]
>>> landsat_imagery['Spectral Bands'] = Mapset().glist('rast', pattern
= 'B[123457]')
>>> landsat_imagery
{'Spectral Bands': []}
So even with an empty result of the glist call, I don't get an error
message.
Moritz
More information about the grass-dev
mailing list