After reading replies regarding starting a mapping business, I think I'd better read a Python book. Any intro-level Python books to recommend?


  • The title and question text sound like two different questions: 1) intro into python for QGIS, 2) beginner-level general python. Which one are you looking for? – underdark Mar 6 '13 at 19:18

I would strongly recommend "Python Geospatial Development" by Erik Westra (published by Packt). It covers GDAL/OGR, Shapely, connecting to PostGIS and even an intro to GeoDjango among other things. Specifically, this book is aimed at using Python for GIS as the name suggests and will possibly be more immediately relevant than a generic Python book (at least to start with).

I would also highly recommend the free on-line tutorial series called Geoprocessing with Python Using Opensource GIS. It is a little old but nonetheless very good.

Python is an excellent language for scripting and making stuff work in the FOSS4G world and you will get quick results from your learning/coding effort. However, if you are wanting to get into programming and hope that your consultancy will pick up programming-related work, you may want to consider C# or some other .NET language, as there doesn't seem to be much call commercially for Python scripters (despite it being used so much in day-to-day geoprocessing).


The Dive into Python book is free online, and it's a very good reference. If you want to buy one, I would recommend Beginning Python by Magnus Lie Hetland.

There are tons of libraries out there for working with spatial data in Python, but a nice starting point is Chris Garrard's online Python programming class.


I started with "Learning Python the Hard Way", available in printe, pdf (very cheap) or online (free). It's example based so I thought it's was easier to go through it.

I went to Python Geospatial Development after.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.