[GRASS-user] Python scripting and GRASS
neteler at osgeo.org
Sun Jan 17 18:59:33 EST 2010
On Thu, Jan 14, 2010 at 11:06 AM, Sonja Jankowfsky
<sonja.jankowfsky at cemagref.fr> wrote:
> I have some questions concerning Python scripting for GRASS under windows.
[I don't have much experience on Windows]
> I'm relatively new to GRASS, and I'm neither familiar with Python nor UNIX
> (but I have some programming experience, C++, Java). I have six months, in
> which I have to work on the preprocessing of a hydrologic model with GRASS.
> For that it will be necessary to write some scripts. The idea was to use
> Python for this, as it is platform independent and more powerfull than UNIX
You mean Shell script: yes, that's right that Python offers way more than
shell scripting. Due to that all shell scripts in GRASS 7 have been rewritten
to Python (they are a good resource to learn how to do it).
> (I'm working on windows as the model only runs on windows) . However, I have
> some problems getting started and all what I found on the internet was quite
In case that GRASS sources are involved, please indicate how to improve
them. We are always happy about detailed feedback.
> I would appreciate all advice concerning the following questions:
> Which compiler is usually used for Python scripting with GRASS? Is there a
> standard way?
Python does not require any compiler. You just need Python installed
(Python 2.x, not 3.x).
> Is it possible to do the scripting inside GRASS?
> Can I use SWIG? Do I have to install it extra, or is there an integrated
SWIG is an extra software which generates extra Python bindings.
You do not necessarily need it for GRASS-Python programming, it
depends on the level of integration you want to achieve between your
model and GRASS.
> I found a description how to configure Eclipse for python and GRASS, but up
> to now I get some Attribut errors while compiling the simple test code (I
> think there are still some problems with the environment variables).
You will need to post the errors to let us better understand the problem.
> Can I run python scripts with MySYS?
I think so (Python needs to be installed).
> Can I access to all the GRASS functions with Python?
In general yes, but there are different levels of doing so.
Please see the Python in GRASS 7 for inspiration:
(or your download GRASS 7 source code).
> Is it usefull to use IDLE?
Perhaps some GRASS-Python developer can comment:
I would say: personal taste: try and decide...
> Is the GRASS plugin for QGIS written in Python?
No, it is in C++:
> Or is it just easier to write the scripts in UNIX?
(you mean Unix shell)
Maybe slightly easier but Python offers way more. So better to invest
> Is it possible to execute the UNIX scripts with MySYS under windows?
Very limited only. So better Python....
More information about the grass-user