Kurs: Python-Aufbau

Dauer: 4-5 Tage

Motivation: Python gehört zu den wichtigsten Programmiersprachen der Welt und gewinnt zunehmend Anhänger. Google, Yahoo!, CERN, NASA und YouTube nutzen Python, weil die Sprache einfach, übersichtlich und gleichzeitig performant ist.

Python ist eine ideale Programmiersprache für Programmieranfänger, weil die Syntax besonders einfach und leicht verständlich ist. Ebenso ist Python eine ideale Programmiersprache für Programmierprofis, weil sie alle Eigenschaften einer modernen Programmiersprache besitzt, eine große Standardbibliothek zur Verfügung steht, sowie portabel und performant ist.

Ziel: Mittels vieler praktischer Übungen lernen Sie die Elemente von Python gründlich kennen und erstellen einfache sowie auch komplexere Programme (Skripte), die gründlich ausgetestet werden. Der Kurs legt viel Wert auf sorgfältig und klar geschriebene Programme und gibt auch Tipps, wie man übersichtlichen Programmcode formuliert.

Hinweis: Der Kurs ist für Linux/UNIX- und für MS-Windows-Systeme geeignet, als Programmierumgebung wird die Kommandozeile und ein beliebiger Editor verwendet.

Inhalt:

  • Python-IDEs
    • PyCharm
  • Fortgeschrittene Programmiertechniken
    • Testen
    • Listenabstraktion/List Comprehension
    • Generator und Iterator
    • Lambda, Mapping, Filter, Reduce
    • Function Annotation
    • Memoization
    • Closure
  • Fortgeschrittene Objektorientierung
    • Magic Methods
    • Attribute Properties
    • Class Decorator
    • Mehrfachvererbung
    • Metaklasse
    • Duck Typing
  • Fortgeschrittene Systembibliothek
    • Forks/Threading (subprocess)
    • Ein/Ausgabe-Ströme (io)
    • Pickling (pickle)
    • Datenbankanbindung (SQLite, MySQL)
    • GUI mit Tkinter
    • NumPy

Schulungsunterlagen:

  • Skript
  • Lösungsblätter zu allen Übungen

Voraussetzungen:

  • Muss: Allgemeine Computer-Kenntnisse (Tastatur, Maus, Grafische Oberfläche, Editor)
  • Muss: Kenntnis einer beliebigen Programmiersprache
  • Optional: Kenntnis einer Integrierten Entwicklungsumgebung (IDE)
  • Optional: Linux/UNIX-Kenntnisse