Python
File Input/Output in Python
Reading and writing text and binary files with open() and the with context manager.
Functions in Python
Define reusable functions in Python, with optional parameters, *args and **kwargs.
Lists in Python
Python’s basic structure for collecting sequences of values: how to create, modify and iterate over them.
Object-Oriented Programming in Python
Introduction to Python classes with a practical networking case study: the IPAddress class.
The CSV Library in Python
Reading and writing CSV files with csv.reader, csv.writer, DictReader and DictWriter from the standard library.
The requests library in Python
Sending HTTP requests in Python: GET, POST, headers, cookies and sessions with the requests library.
Advanced Functions and Modules in Python
How to organise Python code into separate modules and import them correctly into your programs.
Advanced OOP: Inheritance, Abstract Classes and Polymorphism
Inheritance, abstract classes and polymorphism: how to extend and specialise classes in Python.
File Management in Python
File system operations with os, pathlib and shutil: finding, renaming, copying and deleting files.
Flask: building web apps with Python
How to build a Python web app from scratch with Flask: routes, Jinja2 templates, forms and sessions.
EC