Die Sprache Python – benannt nach der britischen Anarcho-Komiker-Truppy Monty Python – ist sicherlich kein Witz. Erstmals ver?ffentlicht im Jahre 1991 und seither kontinuierlich weiterentwickelt hat Python sich einen festen Platz in der Welt des Programmierens erk?mpft. Besonders in der Welt des Machine Learning und für wissenschaftliche Anwendungen erfreut sich die Sprache gro?er Beliebtheit. Neben dem Sprachdesign, das schnelle und flexible Entwicklung erlaubt, ist die Verfügbarkeit von vorgefertigten Paketen (Sammlungen von Programmroutinen aus Bereichen wie Linearer Algebra, Grafischen User-Interfaces oder Datenanalyse) ein gro?er Pluspunkt.
In The Zen Of Python wird die Philosophie der Sprache zusammengefasst in den Punkten:
- Beautiful is better than ugly.
- Explicit is better than implicit.
- Simple is better than complex.
- Complex is better than complicated.
- Readability counts.
Entsprechend diesen Maximen wird im Kurs Einführung ins Programmieren mit Python in einfachen Schritten gezeigt, welche Bauelemente die Sprache Python bietet, und wie mit diesen komplexe Aufgaben bew?ltigt werden k?nnen. Dabei?wird ein Fokus auf Fragestellungen der Naturwissenschaften gelegt. Zus?tzlich werden allgemeine Ideen der Algorithmik und Aspekte der Programmierung unabh?ngig von der verwendeten Programmiersprache behandelt.
Sprache
Vorlesungssprache ist Deutsch.
Die Kursunterlagen werden jedoch ausschlie?lich in englischer Sprache bereitgestellt.
Behandelte Themen
- Grundlagen der Prgrammiersprache Python:
- Variablen
- Datentypen
- Kontrollstrukturen
- Schleifen
- Funktionen
- Fehlerbehandlung
- Klassen
- Generatoren
- Module
- Ausgew?hlte Pakete für die wissenschaftliche Arbeit:
- Matplotlib
- NumPy
- SymPy
- pandas
- SciPy
- tkinter
- Themen der Fortgeschrittenen Software Entwichlung:
- Paralleles Programmieren
- asyncio
- Projektmanagement
Voraussetzungen und Vorkenntnisse
- Es werden keine?Programmierkenntnisse vorausgesetzt.?
- Umgang mit Debian (für den Kurs werden die Rechner im Linux-CIP-Pool verwendet).
- Alternativ kann ein eigener PC (Laptop)? genutzt werden, da alle verwendeten Werkzeuge plattformunabh?ngig und quelloffen sind (Windows, macOS, beliebige Linux-Distribution).
- Englischkenntnisee, da die Kursunterlagen und Teile der Dokumentation nur in Englisch verfügbar sind.
Anforderungen zum erfolgreichen Bestehen (Projekt)
- Aktive Teilnahme an den ?bungen
- Abgabe eines frei w?hlbaren und selbst (allein oder in Zweiergruppen) umgesetzten Abschlussprojekts?nach Absprache mit dem Dozenten. Eine Auswahl an Themenvorschl?gen wird gestellt.
- Weitere Modalit?ten werden vom Dozenten w?hrend des Kurses bekanntgegeben
Kursunterlagen
Das Skript und die Aufgaben für die ?bungen stehen online zur Verfügung:??????