Python-Workshop (17.11.2025 - 21.11.2025)
Dieses Repository enthält die Materialien und Code-Beispiele eines fünftägigen Python-Kurses.
Inhalte
Montag (01_montag.ipynb)
- Einführung & Setup: "Hello World", Jupyter Notebook Basics.
- Package Management: Verwendung von
uvzur Verwaltung von Abhängigkeiten (numpy,matplotlib,pandas). - Data Science Basics: Kurzer Einblick in
pandas(DataFrames) undmatplotlib(Plots). - Type Hinting: Grundlagen der Typ-Annotationen, Type Aliasing,
TypedDict,Literal. - Datenformate: Arbeiten mit JSON (
jsonModul). - Funktionale Programmierung:
lambda-Funktionen,map,filter. - List Comprehensions: Effiziente Erstellung und Filterung von Listen.
- String Formatting: F-Strings, Format-Specifiers (Alignment, Precision, Types).
- Logging Basics: Einfaches Logging mit
logging.basicConfig.
Dienstag (02_dienstag.ipynb)
- Advanced Logging:
- Konfiguration via
logging.config.dictConfigund YAML. - Eigene Logger, Handler (Stream, File, Rotating), Formatter und Filter.
- Logging von Exceptions (
exc_info).
- Konfiguration via
- Error Handling: Globaler Exception-Hook (
sys.excepthook). - Objektorientierte Programmierung (OOP):
- Klassen und Instanzen (
class,__init__). - Methoden, Attribute, Properties (
@property,@x.setter). - Vererbung, Mehrfachvererbung, MRO (Method Resolution Order).
- Magic Methods (z.B.
__str__,__repr__,__add__). - Sichtbarkeiten (Public, Protected, Private/Name Mangling).
- Klassen- und Statische Methoden (
@classmethod,@staticmethod). - Abstrakte Basisklassen (
abc.ABC,@abstractmethod).
- Klassen und Instanzen (
- Introspection:
dir(),vars(),type(). - Decorators (Intro): Grundlagen von Funktions-Dekoratoren.
Mittwoch (03_mittwoch.ipynb)
- Advanced Decorators:
- Dekoratoren mit Argumenten.
- Klassen-Dekoratoren.
- Praktische Beispiele (Type-Checking, Logging).
- Dataclasses: Einfache Datenklassen mit
@dataclass. - Rekursion & Caching: Rekursive Funktionen (Fibonacci) und Optimierung mit
functools.cache. - Generatoren:
yieldundyield from.- Generator Expressions.
- Unendliche Sequenzen.
- Profiling: Performance-Analyse mit
cProfile(Vergleich List Comprehension vs. Generator Expression). - Coroutines: Senden von Werten an Generatoren (
.send()), Exception Handling in Generatoren (.throw()).
Donnerstag (04_donnerstag.ipynb)
- Asynchrone Programmierung:
async-awaitSyntax.- Verwendung des Moduls
asyncio. - Anlegen von
TaskObjekten. - Verwendung von
gatherzum Sammeln der Ergebnisse.
- Asynchroner Webscrapper: Transition von einem Synchronen Projekt in ein asynchrones Framework. Zusätzlich Demonstration von
aiohttp. - Unittesting:
- Erstellen von Tests mit Pythons builtin
unittestModul. - Verwendung von VSC als Testumgebung.
- Testabdeckung mit
coverage. - Einblick in
pytest.
- Erstellen von Tests mit Pythons builtin
- Exception Handling: Erstellen und Verwalten eigener Exceptions.
- Argparse: Python Skripte auf der Kommandozeile.
Freitag (05_freitag.ipynb)
- TODO
Ausführen der Notebooks
Stellen Sie sicher, dass Sie die Abhängigkeiten installiert haben:
uv sync
Starten Sie dann den Jupyter Server:
uv run jupyter lab
Release files for demo_package_21_11_2025 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| demo_package_21_11_2025-0.1.0.tar.gz | 3.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| demo_package_21_11_2025-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 5.7 kB
Release files / demo_package_21_11_2025-0.1.0.tar.gz
| Download URL | demo_package_21_11_2025-0.1.0.tar.gz |
|---|---|
| Size | 3.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8e7494197b33f971b80da8fe5c4d7328bb3ff7040255719789e6b20b181795c9
|
|
BLAKE2b-256 checksum How to use checksums |
5c458c069dc3469fce7b72869d1df4b807e491a2d474d066ca9f40980cc7a2cf
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.5
|
Release files / demo_package_21_11_2025-0.1.0-py3-none-any.whl
| Download URL | demo_package_21_11_2025-0.1.0-py3-none-any.whl |
|---|---|
| Size | 2.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f5497b55a9f62da483d15d3a533daf715a42e39cbe96052d4b0fe87576b8f810
|
|
BLAKE2b-256 checksum How to use checksums |
75f915fd7574d0a588ba0c2061a14a9b2dd1da55a8a0dcc71f43e53fe8f8c039
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.5
|