Welcome to Geo-Python 2018!

The Geo-Python course teaches you the basic concepts of programming using the Python programming language in a format that is easy to learn and understand (no previous programming experience required). Each lesson is a tutorial with specific topic(s) where the aim is to gain skills and understanding how to solve common data-related tasks using Python programming (see schedule & learning goals). Course is organized by the Department of Geosciences and Geography at the University of Helsinki.

Course format

The majority of this course will be spent in front of a computer learning to program in the Python language and working on exercises. During Teaching Period I, the Automating GIS processes and Introduction to Quantitative Geology courses will meet together and focus on learning the basic concepts of programming using Python programming language.

The computer exercises will focus on developing basic programming skills using the Python language and applying those skills to various problems. Typical exercises will involve a brief introduction followed by topical computer-based tasks. At the end of the exercises, you may be asked to submit answers to relevant questions, some related plots, and/or Python codes you have written or used. You are encouraged to discuss and work together with other students on the laboratory exercises, however the laboratory summary write-ups that you submit must be completed individually and must clearly reflect your own work.


The materials are divided into weekly themes that are published at these pages every Wednesday morning before each lesson. Lessons are held with following schedule (see here for further details about schedule and lecture rooms). The learning goals for each lesson are separately documented in here.

Week Lecture date Theme
1 5.9.2018 Basic concepts of Python and computer programs
2 12.9.2018 Diving into Python
3 19.9.2018 Repeating tasks and making decisions
4 26.9.2018 Creating and using functions
5 3.10.2018 Data analysis Part I
6 10.10.2018 Data analysis Part II + Dealing with errors
7 17.10.2018 Data visualization

Practical sessions for enrolled students are organized each week on Thursdays and Fridays (see schedule and rooms here).

Open Access!

The course is open for everyone. The aim of this course is to share the knowledge and help people to get started with their journey for doing science more efficiently and in a reproducible manner using Python programming.

Step by step instructions with cloud computing!

The materials are written in a way that you can follow them step by step exactly as they are written, as long as you use the cloud computing resources that we provide for you (namely JupyterLab Notebooks using Binder or CSC Cloud computing resources). Read more about our cloud computing environment from here. If you work from your own computer, you need to adjust the file paths to the data accordingly.

For teachers

If you would like to use these materials for your own teaching or develop them further, we highly support that. Please read more about how to do it from our licensing terms.