The course covers intermediate to advanced Python programming techniques. Prerequisites: Creating and using variables If-statements, loops and logical expressions Implementing your own functions and classes Importing from external packages In the course we will use Visual Studio Code (VSCode) as the IDE which is free for all operating systems. This course consists of the following topics: Memory management of variables in Python Mutable and Immutable Types Shallow and Deep Copies The correct use of containers (list, dict, set etc.) f-Strings formatting Functions and Decorators args and kwargs Arguments Object orientation and inheritance Special Dunder Methods Dataclass, Enum and NamedTuple The integration of Cython Using the Python C API (CPython) Using PyBind11 (introductory example) Using Numba and Mypyc Using multiprocessing and multithreading Global Interpreter Lock (GIL) in Python Using asynchronous programming
This means that the course is not aimed at programming beginners.
This course is compact, instructive, and useful. You learn not only how to use Python well, but also more abstract concepts that are transferable to other languages, as well as how to create a good programming environment.
I assume that you have already Python 3.8 or newer on your system, if not you could install it via Anaconda for example.
TO MAC USERS: If RAR password doesn't work, use this archive program:
RAR Expander 0.8.5 Beta 4 and extract password protected files without error.
TO WIN USERS: If RAR password doesn't work, use this archive program:
Latest Winrar and extract password protected files without error.