
Python Programmieren Lernen – Der vollständige Einstiegskurs
- 1. Einrichtung der Entwicklungsumgebung
- 2. Code-Stil und Syntax
- 3. Variablentypen
- 4. Operatoren
- 5. Bedingungen
- 6. Schleifen
- 7. Umgang mit Zahlen
- 8. Umgang mit Zeichenketten
- 9. Die Klasse „list“
- 10. Die Klasse „tuple“
- 11. Die Klasse „set“
- 12. Die Klasse „dict“
- 13. Funktionen
- 14. Module und Bibliotheken
- 15. Datum und Uhrzeit
- 1. Klassen und Objekte
- 2. Vererbung
- 3. Methodenüberschreibung (Overriding)
- 4. Statische Methoden
- 5. Abstraktion
- 6. Polymorphismus
- 1. Benutzereingaben
- 2. Iteratoren
- 3. Reguläre Ausdrücke
- 4. Fehlerbehandlung
- 5. Dateiverarbeitung
- 6. Paketmanager PIP
- 7. Datenbankanbindung
- 8. Multitasking & Threads
- 9. Wie geht es weiter?
Lektion 1: Einführung in die Programmiersprache Python
Was ist Python und warum solltest du es lernen?
Inhaltsübersicht:
Was ist Python?
Python ist eine höherwertige, interpretierte Programmiersprache, die 1986 von Guido van Rossum entwickelt wurde. Seit 1991 wird sie öffentlich genutzt. Heute ist Python eine der beliebtesten und vielseitigsten Sprachen weltweit – für Web, Desktop, Automation, Spiele, Data Science und IT-Security.- Desktop-Anwendungen
- Webentwicklung
- Automatisierung (Scripting)
- Spieleentwicklung
- Data Science & Machine Learning
- IT-Sicherheit und Penetration Testing
Gut zu wissen: Python funktioniert auf Windows, macOS, Linux & Co.
Vorteile von Python für Entwickler:innen
- Einfache Syntax: Lesbar & ideal für Einsteiger
- Große Community: Viele Ressourcen & Bibliotheken
- Plattformunabhängig: Lauffähig auf vielen Systemen
- Gefragte Sprache: Hohe Nachfrage am Arbeitsmarkt
- Vielfältiger Einsatz: Von Einsteiger- bis Profiprojekten
Was unterscheidet Python von anderen Programmiersprachen?
Kostenlos & Open Source
- Gratis nutzbar, auch für kommerzielle Projekte
- Quellcode ist offen einsehbar und anpassbar
Technische Vorteile
- Läuft auch auf schwächeren Geräten
- OOP mit Klassen, Vererbung etc.
- Multithreading möglich
- Anbindung an Datenbanken
- GUIs möglich
- Kompatibel mit C, C++, Java
Bildung & Lehre
- Weltweiter Einsatz in Schulen & Universitäten
Für wen ist dieser Kurs geeignet?
Dieser Kurs richtet sich an:- Einsteiger ohne Vorkenntnisse
- Schüler, Studierende, Auszubildende
- Softwareentwickler:innen, die Neues lernen möchten
Bin ich bereit, mit Python zu starten?
Wenn du noch keine Programmiererfahrung hast, empfehlen wir eine Einführung in die Programmierlogik:- Wie denkt ein Programmierer?
- Was ist ein Algorithmus?
- Wie löst man Probleme strukturiert?
Was erwartet dich im nächsten Kapitel?
Du wirst lernen:- Wie du Python installierst
- Welche Werkzeuge du brauchst
- Wie du dein erstes einfaches Programm startest
Lektion 1: Einführung in die Programmiersprache Python
Was ist Python und warum solltest du es lernen?
Inhaltsübersicht:
Was ist Python?
Python ist eine höherwertige, interpretierte Programmiersprache, die 1986 von Guido van Rossum entwickelt wurde. Seit 1991 wird sie öffentlich genutzt. Heute ist Python eine der beliebtesten und vielseitigsten Sprachen weltweit – für Web, Desktop, Automation, Spiele, Data Science und IT-Security.- Desktop-Anwendungen
- Webentwicklung
- Automatisierung (Scripting)
- Spieleentwicklung
- Data Science & Machine Learning
- IT-Sicherheit und Penetration Testing
Gut zu wissen: Python funktioniert auf Windows, macOS, Linux & Co.
Vorteile von Python für Entwickler:innen
- Einfache Syntax: Lesbar & ideal für Einsteiger
- Große Community: Viele Ressourcen & Bibliotheken
- Plattformunabhängig: Lauffähig auf vielen Systemen
- Gefragte Sprache: Hohe Nachfrage am Arbeitsmarkt
- Vielfältiger Einsatz: Von Einsteiger- bis Profiprojekten
Was unterscheidet Python von anderen Programmiersprachen?
Kostenlos & Open Source
- Gratis nutzbar, auch für kommerzielle Projekte
- Quellcode ist offen einsehbar und anpassbar
Technische Vorteile
- Läuft auch auf schwächeren Geräten
- OOP mit Klassen, Vererbung etc.
- Multithreading möglich
- Anbindung an Datenbanken
- GUIs möglich
- Kompatibel mit C, C++, Java
Bildung & Lehre
- Weltweiter Einsatz in Schulen & Universitäten
Für wen ist dieser Kurs geeignet?
Dieser Kurs richtet sich an:- Einsteiger ohne Vorkenntnisse
- Schüler, Studierende, Auszubildende
- Softwareentwickler:innen, die Neues lernen möchten
Bin ich bereit, mit Python zu starten?
Wenn du noch keine Programmiererfahrung hast, empfehlen wir eine Einführung in die Programmierlogik:- Wie denkt ein Programmierer?
- Was ist ein Algorithmus?
- Wie löst man Probleme strukturiert?
Was erwartet dich im nächsten Kapitel?
Du wirst lernen:- Wie du Python installierst
- Welche Werkzeuge du brauchst
- Wie du dein erstes einfaches Programm startest
Lektion 2: Einrichtung der Entwicklungsumgebung
Inhaltsübersicht:
Funktionsweise eines Python-Programms
Grundsätzlich erstellen wir eine Datei mit der Endung .py
, in die wir unsere Python-Befehle schreiben. Nach dem Speichern wird der Python-Interpreter gestartet, der die Befehle Zeile für Zeile ausführt.
Der von dir geschriebene Code heißt Source Code. Um diesen Code auszuführen, wird er an den Python-Interpreter übergeben. Dieser besteht aus zwei zentralen Komponenten:
- Compiler: Wandelt den Source Code in sogenannten Byte Code um (Dateiendung:
.pyc
). - Virtual Machine: Führt den Byte Code auf dem Betriebssystem aus (Windows, Linux, macOS).
Technische Begriffe
- Source Code: Der Originalcode, den du schreibst.
- Byte Code: Vom Compiler erstellter Code, den die Maschine versteht (binär: 0 und 1).
- Compiler: Programm zur Umwandlung von Python-Code in Byte Code.
- Virtual Machine: Führt den Byte Code wie ein normales Programm aus.
- OS (Operating System): Das Betriebssystem – z. B. Windows, Linux, macOS.
Entwicklungsumgebung einrichten
Für diesen Kurs verwenden wir die neueste Version von Python sowie PyCharm – eine kostenfreie und benutzerfreundliche IDE, mit der du deine Projekte effizient verwalten und ausführen kannst.
- Warum PyCharm? Einfach zu bedienen, unterstützt Autovervollständigung und ist perfekt für Einsteiger.
- Alternativ kannst du auch einfache Texteditoren wie Visual Studio Code, Atom oder Notepad++ verwenden.
Tipp: In jeder neuen Programmier-Session sollte ein Projekt in der IDE erstellt werden.
Dein erstes Python-Programm
Im folgenden Beispiel erstellen wir ein einfaches Python-Programm, das die Phrase Hello World!
ausgibt.
Test.py print("Hello World!")
Ausgabe:
Hello World!
In den kommenden Kapiteln wirst du kleine und verständliche Einheiten kennenlernen, die dir die Grundprinzipien von Python näherbringen. Sobald du alle Konzepte verstanden hast, wirst du in der Lage sein, komplette Anwendungen mit grafischer Benutzeroberfläche zu entwickeln.
Lektion 3: Stil und Struktur beim Schreiben von Python-Code
Inhaltsübersicht:
Groß- und Kleinschreibung
In Python ist die Groß- und Kleinschreibung entscheidend. note
und Note
sind zwei verschiedene Variablen:
note = 5
Note = 10
print(note) # Ausgabe: 5
print(Note) # Ausgabe: 10
Benennungsregeln für Variablen, Funktionen und Klassen
Benennungen in Python folgen klaren Konventionen:
- Variablen: Kleinbuchstaben, evtl. mit Unterstrichen
- Funktionen: Wie Variablen (z. B.
calculate_sum
) - Klassen: Großschreibung (CamelCase, z. B.
DataModel
)
score = 100
total_points = 250
def calculate_average():
pass
class User:
pass
Kommentare – Klarheit im Code
Kommentare machen deinen Code verständlich:
# Diese Funktion berechnet den Durchschnitt
def average(a, b):
return (a + b) / 2
Mehrere Anweisungen in einer Zeile?
Vermeide es, mehrere Anweisungen auf eine Zeile zu schreiben – auch wenn es erlaubt ist:
x = 1; y = 2; z = 3 # Möglich, aber schwer lesbar
Mehrzeilige Anweisungen sauber schreiben
Nutze Backslashes \
oder runde Klammern:
total = item_1 + \
item_2 + \
item_3
colors = [
'Red',
'Green',
'Blue'
]
Gültige Namen verwenden
Variablennamen dürfen mit Buchstaben oder Unterstrich beginnen, nicht mit Zahlen oder Sonderzeichen:
- ✅
_name
,user1
,Test
- ❌
1name
,-value
,@user
Reservierte Wörter (Schlüsselwörter)
Diese Wörter sind Teil der Python-Syntax und dürfen nicht als Namen verwendet werden:
and, as, assert, break, class, continue, def, del, elif, else, except,
False, finally, for, from, global, if, import, in, is, lambda, None,
nonlocal, not, or, pass, raise, return, True, try, while, with, yield
Einrückung ist Pflicht!
Python verwendet Einrückung statt geschweifter Klammern:
if score >= 50:
print("Bestanden!")
else:
print("Nicht bestanden.")
Formatierungstipps für sauberen Code
- Immer 4 Leerzeichen zur Einrückung
- Keine Tabs verwenden
- Max. 79 Zeichen pro Zeile
- Zwischen Funktionen/Klassen Leerzeilen lassen
- Kommentare klar und prägnant schreiben
Tabs in Leerzeichen umwandeln (z. B. in PyCharm)
Strg + Alt + S
für Einstellungen öffnen- Editor → Code Style → Python
- „Use tab character“ deaktivieren
- Tabs auf 4 Spaces einstellen
Beispielcode: Prüfung bestanden?
note = 14
if note >= 10:
print("Herzlichen Glückwunsch! Du hast bestanden.")
else:
print("Leider nicht bestanden.")
Innerhalb einer Klasse:
class Prüfung:
note = 14
if note >= 10:
print("Herzlichen Glückwunsch! Du hast bestanden.")
else:
print("Leider nicht bestanden.")
Lektion 3: Stil und Struktur beim Schreiben von Python-Code
Inhaltsübersicht:
Einführung in Code-Stil und Struktur
Ein klar strukturierter und gut formatierter Quellcode ist für die Lesbarkeit und Wartbarkeit von Programmen unerlässlich. Besonders in Python, einer Sprache, die stark auf Lesbarkeit ausgelegt ist, kommt der Einhaltung eines einheitlichen Stils besondere Bedeutung zu.
Guter Code-Stil erleichtert nicht nur die Zusammenarbeit im Team, sondern hilft auch dabei, Fehler zu vermeiden und den Code langfristig zu pflegen.
Bedeutung der Einrückung (Indentation)
In Python wird die Blockstruktur des Codes nicht durch geschweifte Klammern ({}) definiert, sondern ausschließlich durch Einrückungen (meist 4 Leerzeichen). Eine korrekte Einrückung ist nicht nur stilistisch wichtig, sondern zwingend erforderlich, da sie die logische Struktur des Programms bestimmt.
- Fehlerquellen vermeiden: Inkonsistente Einrückungen führen zu Syntaxfehlern.
- Lesbarkeit erhöhen: Ein sauber eingerückter Code zeigt klar, welche Anweisungen zu welchem Block gehören.
- Empfehlung: Verwenden Sie konsequent 4 Leerzeichen für jede Einrückungsebene und keine Tabulatoren.
Gut zu wissen: Viele Code-Editoren und IDEs (z.B. Visual Studio Code, PyCharm) unterstützen automatische Einrückung und erleichtern die Einhaltung dieses Standards.
Aussagekräftige Bezeichner (Variablen- und Funktionsnamen)
Die Wahl von klaren und aussagekräftigen Namen für Variablen, Funktionen und Klassen ist entscheidend für das Verständnis des Codes.
- Vermeiden Sie Abkürzungen: Statt
cnt
liebercount
. - Benutzen Sie englische Begriffe: Diese sind international verständlich und etablierter Standard.
- Folgen Sie Namenskonventionen: Variablen und Funktionen in
snake_case
, Klassen inPascalCase
. - Beispiel:
calculate_average_score()
ist klarer alscalcAvg()
.
Sinnvolle Kommentare schreiben
Kommentare sollen den Code erklären, aber keine offensichtlichen Dinge wiederholen. Sie dienen dazu, komplexe Logik, Annahmen oder den Zweck von Abschnitten verständlich zu machen.
- Kurz und prägnant: Vermeiden Sie lange Erklärungen, die den Code überladen.
- Dokumentationskommentare: Nutzen Sie Docstrings für Funktionen und Klassen, um Parameter und Rückgabewerte zu beschreiben.
- Beispiel für Docstring:
def add_numbers(a, b): """ Addiert zwei Zahlen und gibt das Ergebnis zurück. Parameter: a (int): Erste Zahl b (int): Zweite Zahl Rückgabe: int: Summe von a und b """ return a + b
Funktionen und Klassen strukturieren
Eine gute Strukturierung in Funktionen und Klassen fördert die Wiederverwendbarkeit und Lesbarkeit.
- Funktionen: Jede Funktion sollte eine klar umrissene Aufgabe haben und nicht zu lang sein (idealerweise unter 20 Zeilen).
- Klassen: Objektorientierte Programmierung ermöglicht die Gruppierung von verwandten Daten und Funktionen.
- Kapselung: Vermeiden Sie globale Variablen und schützen Sie Daten durch geeignete Sichtbarkeitskonzepte.
Code-Länge und Modularität
Modularer Code, der in kleine, überschaubare Teile zerlegt ist, erleichtert das Verständnis, das Testen und die Wartung.
- Single Responsibility Principle: Jede Funktion oder Klasse sollte nur eine Aufgabe haben.
- Vermeiden Sie lange Funktionen: Lange Codeblöcke erschweren das Nachvollziehen.
- Modulaufteilung: Organisieren Sie Funktionen und Klassen in separate Dateien (Module) nach Themen oder Funktionalitäten.
Praxisbeispiele
Hier ein Vergleich eines schlecht strukturierten und eines gut strukturierten Codes:
Schlecht:
def c(a,b): x=a+b print(x) c(5,7)
Gut:
def addiere_zahlen(zahl1, zahl2): """ Addiert zwei Zahlen und gibt die Summe zurück. """ summe = zahl1 + zahl2 print(f"Das Ergebnis ist: {summe}") addiere_zahlen(5, 7)
Der gut strukturierte Code ist nicht nur verständlicher, sondern auch leichter erweiterbar und wartbar.