python-kurs-softed/Kursgliederung.md

3.8 KiB

Programmieren mit Python: Kursgliederung

Tag 1 (Montag) Vormittag (9:00 - 12:30 Uhr)

Vorstellung & Organisatorisches (15-20 min)

  • Vorstellung SoftEd, Trainer, Seminarbegleitung
  • Ausblick auf die Seminarinhalte
  • Vorstellungsrunde Teilnehmer, Präsens und Online
  • Ablauf, Pausen, Mittagessen etc.

Einführung in die Programmiersprache Python (45-60 min)

  • Einführung in die Arbeitsumgebung für den Kurs
  • Verwendung des Interpreters (Interactive Modus)
    • Aufruf
    • Interaktives Testen von Code
    • Python als Taschenrechner
    • Erweiterte interaktive Umgebungen (IPython, Jupyter)
  • Genereller Aufbau eines Programms
    • Hallo, Welt!
    • Ein kurzes, aber komplettes Kommandozeilenprogramm
    • Syntaxelemente von Python (Ausdrücke, Anweisungen, Operatoren, Trennzeichen, Einrückung usw.)
  • Grundlegende Datentypen und Operationen
    • Integer und mathematische Operatoren
    • Fließkommazahlen (Floats)
    • Strings
  • Kontrollstrukturen und Vergleichsoperatoren
    • Branching (Verzweigung): if / elif / else und match
    • Loops (Schleifen): for und while
    • Funktionen: def und return

Warum Python? (15 min)

Was macht Python besonders und unterscheidet es von anderen Programmiersprachen?

Anwendungsbereiche von Python

  • als "Skriptsprache"
  • für Desktop- und Webanwendungen
  • für Scientific Computing und Data Science
  • für Machine Learning
  • als Bindeglied zwischen Komponenten und Bibliotheken in anderen Sprachen
  • Für Embedded Programming (MicroPython)

Kaffee/Teepause (20 min)

Erweiterte Grundlagen in Python

Erweiterte Datentypen: Container (45 min)

  • Listen
  • Tupel
  • Dictionary
  • Sets

Übungsaufgaben

String-Operation und String-Formatierung und Ausgabe (45 min)

  • Escape-Sequenzen, Single-, Double- und Triple-Quotes und Klammerung
  • Stringvergleiche und Testen auf Substrings
  • Strings zusammenfügen, auftrennen und slicen
  • Uppercase, Lowercase, Capitalization, Stripping, usw.
  • String-Formatierung und Formatstrings

Übungsaufgaben

Mittagspause (12:30 - 13:30 Uhr)

Tag 1 (Montag) Nachmittag (13:30 Uhr - 17:00 Uhr)

Zugriff auf Dateisystem (Teil 1) (20 min)

  • Öffnen und Lesen von Dateien
  • Ganzen Dateiinhalt einlesen
  • Textdateien zeilenweise einlesen
  • Textzeilen in Datenfelder zerlegen

Fehlerbehandlung in Python (45-60 min)

  • Was sind Exceptions?
  • Abfangen von Fehlern
  • Eigene Fehler erzeugen
  • Eigene Exceptions definieren und benutzen

Übungsaufgaben

Objektorientierung in Python (45-60 min)

  • Allgemeiner Einblick in die Objektstruktur in Python
  • Definieren von Klassen
  • Erzeugen von Objekten
  • Vererbung
  • Spezialmethoden von Objekten ("Dunder methods")

Kaffee-/Teepause (20 min)

Übungsaufgaben

Tipps und Tricks im täglichen Umgang mit Python (10-20 min)

Zusammenfassung, Fragen, Lösungen usw.

Tag 2 (Dienstag) Vormittag (9:00 - 12:30 Uhr)

Rekapitulierung der Inhalte vom Vortag und Fragen (20-30 min)

Module in Python (45-60 min)

  • Importieren, verwenden von Modulen
  • Allgemeiner Umgang mit dem Packet Manager PIP
  • Eigene Module definieren
  • Module und Pakete (`Packages')
  • Der Standardmodulsuchpfad (sys.path)
  • Relative Importe

Kaffee-/Teepause (20 min)

Zugriff auf das Dateisystem (Teil 2)

  • Öffnen, Lesen und Schreiben von Dateien
  • Text- und Binärdaten
  • Text-Encodings
  • Lesen und Schreiben von Daten im JSON Format
  • Fehlerbehandlung und Context Manager (with-Statement)
  • Dateiordner auflisten und durchsuchen

Übungsaufgaben

Datenbankzugriff mit Sqlite3

Übungsaufgaben

Mittagspause (12:30 - 13:30 Uhr)

Tag 2 (Dienstag) Nachmittag (13:30 Uhr - 17:00 Uhr)

Entwicklung eines HTML-Crawlers (60-90 min)

Kaffee-/Teepause (20 min)

Zusammenfassung, Fragen, Lösungen usw. (30 min)

Best Practices (30 min)

  • Code Style
  • Verwendung von Dekoratoren (falls Zeit)