Advanced Python

The participants of this course should be comfortable using Python for simple scripts 

and should know the procedural or functional programming style. In particular, the potential participant should be familiar with handling of built-in datatypes, variables, control flow structures, defining and structuring code in functions and creating and loading modules. The course language will be English.



The participants of this course will be familiarized with advanced topics in Python like

  • object-oriented programming
  • yhe global interpreter lock (GIL)
  • multi-threading vs. multi-processing
  • simple multi-processing with joblib
  • inter-process communication
  • subprocesses and pipelines: subprocess, snakemake
  • batch processing
  • PEP8 code style (lintering) and documentation (docstrings + sphinx)
  • debugging and logging

in five sessions of 4h each.

To allow the participants to study the material afterwards in their own pace, the Jupyter Notebooks will contain links to short explanatory videos for each step in the sessions.


Please note that a university account at University of Greifswald is required for using the University's JupyterHub (e.g. a student, employee or guest account). The JupyterHub is a service running on a remote server providing an environment to work on and run Jupyter notebooks remotely.
If you want to use the University's JupyterHub ( remotely (e.g. from home or being outside of the university's network), you have to setup the remote connection to the university network via VPN beforehand!

You can find the instructions to setup and use the VPN access here:

If you can access the university's JupyerHub via the link above, the VPN connection is working properly. You can check the VPN connection and if you are part of the university network using the following link:

If you want to use JupyterNotebooks locally (hence on your own machine, if you don't have a university account), you have to download and install the Anaconda environment beforehand. You can find it here:



  • M. Lutz, Learning Python: Powerful Object-Oriented Programming, O'Reilly, ISBN: 978-1449355739
  • L. Ramalho, Fluent Python: Clear, Concise and effective Programming, O'Reilly, ISBN: 978-1-491-9-46008


online course registration  Moodle-course

Please register for the course via the online course registration by 22. September 2021.


If you are interested in this course, please also take a look at the other Data Competency Courses of Summer 2021

02.08. - 05.08.2021: Python from Zero: the Absolute Beginner’s Course (Fabian Wilde)
19.08. - 24.08.2021: C++ for Beginners (Matthis Ebel)
25.08. - 26.08.2021:Introduction to Python for People with Programming Experience (Fabian Wilde)
13.09. - 14.09.2021: Data Visualization and Statistics with Python (Fabian Wilde)
20.09. - 23.09.2021: Working with Bash and Computing Servers (Matthis Ebel)
27.09. - 01.10.2021: Advanced Python (Fabian Wilde)
04.10. - 05.10.2021: Introduction to 3D Printing (Fabian Wilde)

Please note that a university account at University of Greifswald is required for using the University’s JupyterHub (e.g. a student, employee or guest account).


Trainer: Fabian Wilde (

Date and time: 27.09. - 01.10.2021  I  09.00 am  - 12.30 pm

Number of participants: max. 30

Course language: english

Format: online course

Zurück zu allen Veranstaltungen