- 1 Section
- 10 Lessons
- unbegrenzt
- Python Grundlagen10
- 1.1Python-Grundlagen: Installation, REPL, erstes Skript
- 1.2Variablen, Datentypen, Typumwandlung
- 1.3Kontrollstrukturen: if, elif, else
- 1.4Schleifen: for, while, range
- 1.5Listen, Tupel, Dictionaries, Sets
- 1.6Funktionen: def, Parameter, return
- 1.7Fehlerbehandlung: try-except-finally
- 1.8Strings: Methoden, Formatierung, f-Strings
- 1.9Dateien lesen und schreiben
- 1.10Praxisprojekt: Kleines Python-Programm von A bis Z
Python-Grundlagen: Installation, REPL, erstes Skript
Python ist eine der beliebtesten Programmiersprachen der Welt. Sie wird in der Webentwicklung (Django, Flask), Datenanalyse (Pandas), Machine Learning (TensorFlow, PyTorch), Skripting, DevOps und sogar in der Wissenschaft genutzt. Der Reiz: Python ist leicht zu lesen, sehr direkt – und du brauchst kaum „Boilerplate"-Code. Wo du in Java noch eine Klasse, eine main-Methode und Klammern brauchst um „Hallo Welt" auszugeben, reicht in Python eine einzige Zeile.
Was Python besonders macht ist sein interaktiver Modus: du startest python im Terminal und kannst sofort Code eingeben und sehen was passiert – ohne irgendwas zu kompilieren oder eine Datei zu speichern. Das macht das Lernen viel direkter. Diese interaktive Shell heißt REPL: Read–Eval–Print–Loop. Sie liest deine Eingabe, wertet sie aus, druckt das Ergebnis und macht das in einer Schleife.
1) Installation: Python auf den Rechner bekommen
Auf macOS und den meisten Linux-Distributionen ist Python bereits vorinstalliert. Auf Windows musst du es selbst installieren. Wichtig ist die Version: nutze Python 3 (heute mindestens 3.11+). Python 2 ist seit 2020 offiziell tot und sollte nicht mehr verwendet werden:
python.org/downloads herunter. Wichtig: Beim Setup die Checkbox „Add Python to PATH" ankreuzen – sonst findet die Eingabeaufforderung Python nicht. Alternativ über den Microsoft Store.
brew install python. Danach steht python3 im Terminal zur Verfügung.
sudo apt install python3 python3-pip. Bei Fedora/RHEL: sudo dnf install python3.
python --version (Windows) oder python3 --version (macOS/Linux). Erwartete Ausgabe: Python 3.12.x oder ähnlich.
2) Die REPL – probier es jetzt aus
Wenn du im Terminal python eingibst, landest du in der REPL. Du siehst >>> – das ist die Eingabeaufforderung. Tippe etwas ein, drücke Enter, sieh das Ergebnis. Hier eine simulierte REPL – probier verschiedene Eingaben:
Type "help", "copyright", "credits" or "license" for more information.
2 + 3 · 10 / 3 · "Hallo" * 3 · len("Python") · print("Hi!") · name = "Anna" · name · 2 ** 10 · import this
2 + 3 eintippst, erscheint 5 in der nächsten Zeile. Bei einem Skript (gespeicherte .py-Datei) musst du dagegen print(...) verwenden um etwas zu sehen. Verlasse die REPL mit exit() oder Strg+D (Linux/Mac) bzw. Strg+Z + Enter (Windows).3) Dein erstes Skript: hallo.py
Die REPL ist toll zum Experimentieren – aber echte Programme schreibst du in Skript-Dateien mit Endung .py. Öffne einen Editor, schreib folgenden Code, speichere als hallo.py:
Ausführen im Terminal: python hallo.py (Windows) oder python3 hallo.py (Mac/Linux). Erwartete Ausgabe:
Das war's. Keine Klasse, keine main-Methode, keine geschweiften Klammern – einfach die Befehle hinschreiben. Das f vor dem letzten String macht daraus einen f-String – mit den Klammern {name} kannst du Variablen direkt in den Text einsetzen. Eine der elegantesten Python-Features.
4) Python vs. Java: warum so anders?
Wer schon Java kennt, dem fällt sofort auf wie viel kürzer Python ist. Beide Sprachen sind objektorientiert, beide sind plattformunabhängig – aber die Philosophie ist sehr unterschiedlich. Hier ein direkter Vergleich derselben Aufgabe:
public static void main(String[] args) {
System.out.println("Hallo");
}
}
String name = "Anna";
double preis = 19.99;
name = "Anna"
preis = 19.99
javac-Schritt nötig. Dynamisch typisiert – du musst den Typ nicht angeben, Python merkt sich das selbst. Verwendet Einrückung statt geschweifter Klammern für Code-Blöcke (mehr dazu in Lektion 3). Kein Semikolon am Zeilenende. Java ist schneller bei der Ausführung, Python ist schneller zu schreiben.5) Wann nimmt man Python? Wann was anderes?
Python ist nicht für alles die beste Wahl. Hier eine ehrliche Übersicht wo Python glänzt und wo nicht:
| Einsatzbereich | Python? | Bemerkung |
|---|---|---|
| Datenanalyse, ML, KI | ✓✓✓ Top | Pandas, NumPy, scikit-learn, PyTorch, TensorFlow |
| Skripting / Automatisierung | ✓✓✓ Top | Schnell schreiben, lesbar, alles als „Glue Code" |
| Webentwicklung Backend | ✓✓ Gut | Django, Flask, FastAPI |
| DevOps / Sysadmin | ✓✓ Gut | Ansible, Cloud-SDKs, Skripte |
| Wissenschaft, Forschung | ✓✓ Gut | Jupyter-Notebooks, SciPy, Bibliotheken |
| Mobile Apps | ✗ Nicht ideal | Besser: Java/Kotlin für Android, Swift für iOS |
| Performance-kritisch (Spiele, Echtzeit) | ✗ Zu langsam | Besser: C++, Rust, Go |
| Frontend / Browser | ✗ Geht nicht | JavaScript – siehe K42 Web-Grundlagen |
6) Die Python-Philosophie: PEP 20
Python hat eine offizielle „Sprachphilosophie" – „The Zen of Python". Gib in der REPL import this ein und du siehst sie. Die wichtigsten Punkte:
- Beautiful is better than ugly – Lesbarkeit zählt
- Explicit is better than implicit – Klares besser als Verstecktes
- Simple is better than complex – Einfach gewinnt
- There should be one obvious way to do it – ideal: ein klarer Weg
Daraus entstand der Begriff „pythonic": Code der wie typisches Python aussieht – kurz, klar, idiomatisch. Den Weg zu pythonic-Code findest du nicht in einer Lektion, sondern durchs viele Beispiele-Lesen. In den nächsten 9 Lektionen wirst du eine Menge davon sehen.
Zusammenfassung
Python = interpretierte, dynamisch typisierte Sprache. Installation je nach OS: python.org / Homebrew / apt. Version Python 3.11+ verwenden. REPL (>>>): interaktive Shell zum Experimentieren – jede Eingabe sofort ausgewertet. Skripte: .py-Dateien, Ausführung mit python datei.py. Erstes Programm: print("Hallo") – eine Zeile reicht. Unterschied zu Java: keine Klasse, kein main, keine Typen-Deklaration, Einrückung statt Klammern, Semikolons unnötig. Python glänzt in Datenanalyse, ML, Skripting, Web-Backends. Nicht ideal für Mobile/Performance-kritisches.
