View on GitHub


Repository for participants of the "Python for systems programming" training

Python is a very versatile programming language that has a wide range of applications. This training concentrates on interaction with the operating system, the file system, other applications and the network. This is useful for systems programming, but also when you want to use Python as a coordination language for your workflows. This training introduces modules that are useful in that context.

Learning outcomes

When you complete this training you will


Total duration: 4 hours.

Subject Duration
introduction and motivation 5 min.
command line argument, configuration files, environment variables 40 min.
logging 10 min.
interacting with the file system 40 min.
coffee break 10 min.
data formats 30 min.
templates 10 min.
interacting with processes 45 min.
interacting with remote systems using SSH 30 min.
compressed files 10 min.
wrap up 10 min.

Training materials

Slides are available in the GitHub repository, as well as example code and hands-on material.

Target audience

This training is for you if you need to use Python for scripting and coordination of processes.


You will need experience programming in Python. This is not a training that starts from scratch.

If you plan to do Python programming in a Linux or HPC environment you should be familiar with these as well.