Was ist Python
Kurz gesagt: Python ist eine Programmiersprache für Daten, künstliche Intelligenz, Automatisierung und Server: Der Interpreter python übersetzt die Datei in Bytecode und führt sie aus.
Problem
Warum Python
Es gibt Hunderte von Programmiersprachen. Jede ist für etwas gut, aber nicht für alles gleich gut. Bevor du Monate mit einer von ihnen verbringst, solltest du wissen, wo du sie einsetzen wirst.
Python ist eine Sprache, in der Programme kurz zu schreiben sind und sich fast wie normaler Text lesen:
- Daten und künstliche Intelligenz: Tabellen auswerten, Diagramme zeichnen, Modelle trainieren. Die meisten Bibliotheken für maschinelles Lernen benutzt man aus Python;
- Automatisierung: kleine Programme, die Tausende Dateien umbenennen, Tabellen ausfüllen oder jeden Morgen eine Website prüfen;
- Websites und Webdienste: die Serverseite, mit Bibliotheken wie Django und FastAPI;
- Wissenschaft und Ausbildung: An vielen Universitäten ist Python die erste Sprache, und Forschende nutzen es für Berechnungen und Experimente.
Python gibt es seit 1991. Jedes Jahr erscheint eine neue Version, und es gibt Hunderttausende fertige Bibliotheken.
Die Idee
Vom Text zum Programm
Das Programm, das du schreibst, ist normaler Text in einer Datei. Hier ist ein ganzes Programm:
print("Bestellung Nr. 1024 wurde angenommen.")Bestellung Nr. 1024 wurde angenommen.Ja, das ist das ganze Programm: eine Zeile. Zu den Wörtern darin kommen wir in der Lektion „Dein erstes Programm“. Hier geht es um etwas anderes: Der Prozessor des Computers versteht diesen Text nicht. Etwas muss ihn übersetzen.
- Du schreibst den Quellcode in eine Datei namens
shop.py. - Du startest sie mit dem Befehl
python shop.py. Das Programmpythonnennt man Interpreter. Er prüft zuerst, wie die ganze Datei geschrieben ist, und übersetzt sie in Bytecode. Das passiert im Speicher, bei jedem Start des Programms: Einen eigenen Kompilierschritt, den du ausführen müsstest, gibt es nicht. - Derselbe Interpreter führt den Bytecode aus, Zeile für Zeile.
Es gibt Python für Windows, macOS und Linux. Deshalb kannst du shop.py selbst auf einen anderen Computer mitnehmen, und es läuft ohne jede Änderung. Das nennt man Plattformunabhängigkeit.
print("Bestellung Nr. 1024 wurde angenommen.")Schritt für Schritt, in Worten
- Du schreibst den Quellcode: normalen Text in der Datei shop.py.
- Einen eigenen Compiler, den du startest, gibt es nicht: Python liest die Datei selbst.
- Auf einen anderen Computer kommt also shop.py selbst, keine kompilierte Datei.
- Dieselbe shop.py geht unverändert an Windows, macOS und Linux.
- Python prüft auf jedem System die Datei, übersetzt sie in Bytecode und führt sie aus. Die Ausgabe ist dieselbe.
Genauer, für Neugierige
- Die Prüfung umfasst die ganze Datei. Fehlt in der zweiten Zeile eine Klammer, gibt das Programm nichts aus, nicht einmal die erste Zeile: Python bricht mit einem
SyntaxErrorund der Zeilennummer ab, bevor es überhaupt etwas ausführt. Ein falsch geschriebener Name (totlstatttotal) ist etwas anderes. Dieser Fehler (NameError) zeigt sich erst, wenn das Programm seine Zeile erreicht, und die Zeilen davor sind schon gelaufen. - Das normale Python (CPython) übersetzt das Programm nicht in Maschinencode. Der Interpreter führt den Bytecode aus, deshalb ist Python bei schweren Berechnungen langsamer als Java und C#. Die Bibliotheken für Berechnungen (NumPy) sind in C geschrieben und erledigen den schweren Teil schnell. Seit Python 3.13 gibt es auch JIT-Kompilierung (Übersetzung in Maschinencode, während das Programm läuft), aber sie ist experimentell und standardmäßig ausgeschaltet.
- Der Bytecode der Datei, die du startest, bleibt im Speicher. Python schreibt Bytecode nur für die Dateien auf die Festplatte (der Ordner
__pycache__,.pyc-Dateien), die das Programm mitimporthereinholt, damit es sie nicht jedes Mal neu übersetzen muss.
- Speicher. Jedes Programm belegt Speicher für seine Daten. In Sprachen wie C gibt der Programmierer den Speicher, den er nicht mehr braucht, selbst frei, und wenn er es vergisst oder falsch macht, belegt das Programm immer mehr Speicher oder stürzt ab. Python erledigt das für dich: Der Garbage Collector („Müllsammler“) findet die Daten, die das Programm nicht mehr erreichen kann, und gibt ihren Speicher frei.
- In Python wird der Speicher der meisten Daten freigegeben, sobald nichts im Programm mehr auf sie zeigt, und der Garbage Collector kümmert sich um die komplizierteren Fälle.
Die Idee
Was du lernst
Der Kurs besteht aus Modulen. Jedes Modul verwendet nur, was in den Modulen davor vorkam:
- Grundlagen der Sprache: Variablen, Eingabe und Ausgabe, Berechnungen, Bedingungen, Schleifen, Listen, Text.
- Funktionen: Code, den du einmal schreibst und oft aufrufst.
- Klassen und Objekte: deine eigenen Typen, etwa
OrderoderStudent. - Vererbung und Polymorphie: was mehrere Typen gemeinsam haben, an einer Stelle.
- Fehler und Exceptions: was das Programm tut, wenn etwas schiefgeht.
- Text und Dateien: Arbeit mit Strings, Suchmustern (Regex) und Dateien.
- Collections: Listen, Stack, Queue, Dictionaries, Sets.
- Modernes Python: Lambda-Funktionen, Datenverarbeitung in Schritten und die neueren Möglichkeiten der Sprache.
- Programme in der echten Welt: Tests, Nebenläufigkeit, Netzwerk, Datenbanken.
Neben dem Hauptweg gibt es Spiele und Projekte: ganze Programme, die du Schritt für Schritt baust.
Die Bibliotheken, für die Python am bekanntesten ist (NumPy und pandas für Daten, PyTorch für künstliche Intelligenz), sind nicht in diesem Kurs. Er lehrt die Sprache selbst. Danach hast du alles, was du brauchst, um sie selbst zu lernen.
Die Idee
Wie du hier lernst
Jede Lektion ist eine Reihe von Karten, eine Idee pro Karte. Meist beginnt sie mit einem Problem aus dem echten Leben und zeigt dann, was wirklich passiert, oft mit einer Animation neben dem Code. Danach kommt eine kleine Aufgabe: die Ausgabe vorhersagen, das Fehlende ergänzen, den Fehler finden. Am Ende gibt es eine Übung, die du in deinem eigenen Editor löst, und einen kurzen Test.
Dein Fortschritt wird im Browser gespeichert: Die Lektion macht bei der Karte weiter, bis zu der du gekommen bist.
Die Karte des ganzen Kurses ist auf der Startseite des Kurses.
Überspring die Übungen nicht. Code lesen und Code schreiben sind verschiedene Fähigkeiten, und die zweite kommt nur vom Schreiben.
Die Idee
Fehler gehören zur Arbeit
Deine ersten Programme werden oft nicht starten. Du wirst ein Anführungszeichen, eine Klammer oder einen Doppelpunkt vergessen oder eine Zeile falsch einrücken, und Python wird sich weigern, die Datei auszuführen.
Das ist keine Note für dich. Die Fehlermeldung ist da, um zu helfen: Sie sagt dir, in welcher Zeile das Problem liegt und was es ist. Erfahrene Programmierer sehen diese Meldungen auch jeden Tag. Der Unterschied ist, dass sie gelernt haben, sie ruhig zu lesen. Wir fangen schon in der allerersten Lektion mit Code an, sie zu lesen.
Wenn etwas lange nicht klappen will, lass es liegen und komm etwas später zurück. Oft siehst du den Fehler sofort, wenn du noch einmal hinschaust.
Kurz gesagt
Kurz gesagt
- Python wird für Daten und künstliche Intelligenz, Automatisierung, Server und Wissenschaft eingesetzt.
- Den Quellcode (
shop.py) startest du mitpython shop.py: Der Interpreter prüft die Datei, übersetzt sie in Bytecode und führt sie aus. Dieselbe Datei läuft auf jedem System. - Speicher gibt der Garbage Collector automatisch frei.
- Der Kurs besteht aus Modulen, jede Lektion aus Karten. Die Übungen machst du in deinem eigenen Editor.
- Eine Fehlermeldung ist Hilfe, keine Note.
Als Nächstes machst du deinen Computer bereit: was du installieren musst, um dein erstes Programm zu starten.