Advanced Python Programming


About this course

In this course, the student is taught how to build interactive applications. Building interactive applications in Python is widespread in industry, research and education. For this, the course consists of three parts. In the first part, advanced programming principles are offered. As part of the design process, analysis of algorithms is included to help predict and evaluate the performance of applications. In the second part, Graphical User Interfaces are taught for building interactive applications. In the final part of the course, the students learn to use data sources to support applications. Databases, textual resources and the web are examples of the data sources considered. The obtained knowledge and skills will be applied in a final case study in which groups of students create interactive applications on a topic related to their study domain or interest.

Learning outcomes

After successful completion of this course students are expected to be able to:

  • Create interactive applications using advanced python programming principles, constructs and libraries
  • Program graphical user interface-based applications in Python
  • Apply advanced programming principles, including functional programming and object-oriented programming
  • Apply advanced programming constructs and libraries, including those for connecting to data sources, data visualisation, text processing, logging and event handling, recursion and testing

Required prior knowledge

Assumed Knowledge:
Fundamentals of programming (e.g. INF22306 Programming in Python).
Specifically, you should be acquainted with the following concepts and techniques:

  • variables, assignment, expressions, operators;
  • functions (and/or procedures, subroutines, methods) and parameters; also making your own functions;
  • control structures: at least: if, for, while;
  • objects and their properties (fields, variables) and operations (methods);
  • arrays, including standard algorithms to traverse arrays (searching, summing, finding the largest element, etc.).

Link to more information

If anything remains unclear, please check the FAQ of Wageningen University.


  • Start date

    12 May 2025

    • Ends
      4 July 2025
    • Term *
      Period 6
    • Location
    • Instruction language
    • Register between
      1 Jun, 00:00 - 6 Apr 2025
These offerings are valid for students of Utrecht University