Zum Inhalt

Grundlagen der Python-Programmierung

Einfacher Einstieg für Anfänger und Quereinsteiger - mit Aufgaben und Lösungsbeispielen

  • 2026
  • Buch

Über dieses Buch

Dieses Buch vermittelt einen systematischen Einstieg in die Python-Programmierung und führt Schritt für Schritt durch alle wichtigen Grundlagen bis hin zu fortgeschrittenen Konzepten. Es beginnt mit den zentralen Sprachelementen wie Datentypen, Variablen, Operatoren, Zeichenketten und numerischen Funktionen und zeigt anhand klarer Beispiele, wie Python effizient eingesetzt wird.

Aufbauend darauf behandelt das Buch strukturierte Daten wie Listen, Tupel, Dictionaries und Sets sowie Kontrollstrukturen mit Verzweigungen und Schleifen. Im weiteren Verlauf werden Funktionen, Fehlerbehandlung und objektorientierte Programmierung ausführlich erklärt. Ein eigenes Kapitel widmet sich dem Arbeiten mit Dateien, inklusive Lesen, Schreiben, CSV-Verarbeitung und grundlegenden Funktionen des Betriebssystems.

Abgerundet wird das Werk durch einen großen Übungsteil mit praxisnahen Aufgaben und vollständigen Lösungen, die das eigenständige Lernen unterstützen und den Stoff festigen. Damit eignet sich das Buch sowohl für Einsteigerinnen und Einsteiger in Informatik und Data Science als auch für Anwenderinnen und Anwender, die ein solides Fundament für weiterführende Python-Anwendungen aufbauen möchten.

Inhaltsverzeichnis

  1. Frontmatter

  2. 1. Grundlagen in Python

    Yavuz Can
    Dieses Kapitel bietet einen umfassenden Einstieg in die Programmiersprache Python und behandelt dabei die grundlegenden Konzepte, die für den Einstieg und die effiziente Nutzung der Sprache entscheidend sind. Zunächst wird die Entstehung und Philosophie von Python erläutert, wobei besonders auf die klare Syntax und die umfangreichen Standardbibliotheken eingegangen wird. Ein zentraler Schwerpunkt liegt auf der Installation und Einrichtung der Entwicklungsumgebung, inklusive der Nutzung von IDLE und Spyder, sowie den ersten Schritten in der Programmierung mit Python. Dabei werden grundlegende Programmierkonzepte wie Variablen, Operatoren, arithmetische und logische Operationen sowie die Verwendung von Shortcut-Operatoren ausführlich erklärt. Ein weiterer wichtiger Aspekt ist die Darstellung von Zahlensystemen und deren Umwandlung, die für die Arbeit mit verschiedenen Datenformaten unerlässlich ist. Zudem werden die Grundlagen der Fehlerbehandlung und Dokumentation behandelt, um eine strukturierte und nachvollziehbare Programmierung zu fördern. Abschließend wird auf die Bedeutung der Python-Community und die Vorteile der plattformunabhängigen Nutzung eingegangen. Das Kapitel vermittelt nicht nur theoretisches Wissen, sondern bietet auch praktische Beispiele und Übungen, die das Verständnis vertiefen und den Einstieg in die Programmierung mit Python erleichtern.
  3. 2. Zeichenketten

    Yavuz Can
    Dieses Kapitel führt umfassend in die Arbeit mit Zeichenketten in Python ein und deckt sowohl grundlegende als auch fortgeschrittene Techniken ab. Zunächst werden die Definition und Darstellung von Zeichenketten erläutert, einschließlich der korrekten Verwendung von Anführungszeichen und der Handhabung von Steuerzeichen wie Zeilenumbrüchen oder Tabulatoren. Ein zentraler Schwerpunkt liegt auf der effizienten Nutzung von Indizes und Slicing, um gezielt Teile einer Zeichenkette zu extrahieren oder zu modifizieren. Besonders praxisrelevant ist die Einführung in f-Strings, die eine dynamische Einbindung von Variablen in Texte ermöglichen und damit die Flexibilität der String-Verarbeitung deutlich erhöhen. Im weiteren Verlauf werden leistungsstarke Methoden wie split(), join(), replace() oder strip() detailliert vorgestellt, die für die Aufbereitung, Analyse und Transformation von Textdaten essenziell sind. Jede Methode wird anhand konkreter Code-Beispiele erklärt, um ihre Anwendung sofort nachvollziehbar zu machen. Abschließend wird die Bedeutung dieser Techniken für die Entwicklung von Programmen betont, die Benutzereingaben verarbeiten, Daten strukturieren oder Textinhalte automatisiert analysieren. Wer diese Konzepte beherrscht, kann Texte nicht nur effizienter manipulieren, sondern auch komplexe Verarbeitungsprozesse in Python deutlich vereinfachen.
  4. 3. Zahlen – mathematische Funktionen

    Yavuz Can
    Dieses Kapitel führt in die drei zentralen numerischen Datentypen von Python ein: Ganzzahlen (*int*), Gleitkommazahlen (*float*) und komplexe Zahlen (*complex*). Es zeigt, wie diese Datentypen für präzise Berechnungen genutzt werden können und welche Besonderheiten bei ihrer Verwendung zu beachten sind. Im Fokus stehen dabei grundlegende mathematische Funktionen wie *abs()* für den Absolutwert, *round()* zum Runden von Zahlen sowie *max()* und *min()* zur Bestimmung von Extremwerten. Ein weiterer Schwerpunkt liegt auf der Methode *sum()*, die die Summation von Zahlenmengen ermöglicht, und *zip()*, die Wertepaare aus zwei Mengen verknüpft. Zudem wird das Modul *random* detailliert vorgestellt, das die Erzeugung von Zufallszahlen für Simulationen, statistische Analysen oder zufällige Auswahlverfahren ermöglicht. Der Text erklärt nicht nur die Funktionsweise der einzelnen Methoden, sondern liefert auch praktische Code-Beispiele, die die Anwendung direkt nachvollziehbar machen. Besonders hervorzuheben ist die Kombination aus theoretischen Grundlagen und anwendungsorientierten Beispielen, die es Lesern ermöglicht, die behandelten Konzepte sofort in eigenen Projekten umzusetzen. Wer seine Fähigkeiten in der Python-Programmierung erweitern und numerische Operationen sicher beherrschen möchte, findet hier eine fundierte und praxisnahe Anleitung.
  5. 4. Strukturierte Daten

    Yavuz Can
    Dieses Kapitel führt in die zentralen strukturierten Datentypen der Programmiersprache Python ein und zeigt, wie diese zur effizienten Verwaltung und Verarbeitung von Daten genutzt werden können. Zunächst werden Listen als flexible, veränderbare Sammlungen vorgestellt, die durch Indizierung, Slicing und zahlreiche Methoden wie append(), insert() oder sort() vielseitig einsetzbar sind. Anschließend wird das unveränderliche Tupel als Alternative zu Listen erklärt, das sich besonders für konstante Daten eignet. Der Fokus liegt auf Dictionaries als schlüsselbasierte Strukturen, die den Zugriff auf Werte über eindeutige Schlüssel ermöglichen und mit Methoden wie keys(), values() oder items() flexibel bearbeitet werden können. Abschließend werden Sets als ungeordnete Sammlungen einzigartiger Elemente behandelt, die sich ideal zur Entfernung von Duplikaten oder zur Durchführung von Mengenoperationen wie Schnitt-, Vereinigungs- oder Differenzmengen eignen. Praktische Beispiele veranschaulichen die Anwendung dieser Datenstrukturen in realen Programmierkontexten, von einfachen Auflistungen bis hin zu verschachtelten Datensätzen und komplexen Datenanalysen. Wer diese Konzepte beherrscht, kann seine Python-Programme strukturierter und effizienter gestalten – eine Fähigkeit, die in der modernen Softwareentwicklung unverzichtbar ist.
  6. 5. Verzweigungen, Schleifen und Control Statements

    Yavuz Can
    Dieses Kapitel führt systematisch in die Kontrollstrukturen von Python ein – Verzweigungen, Schleifen und Kontrollanweisungen – und zeigt, wie diese die Grundlage für dynamische und situationsabhängige Programmabläufe bilden. Zunächst werden die verschiedenen Arten von Verzweigungen erläutert: von einfachen if-Bedingungen über if-else-Verzweigungen bis hin zu verschachtelten if-elif-else-Strukturen. Anhand konkreter Codebeispiele wird veranschaulicht, wie Bedingungen geprüft und alternative Programmzweige ausgeführt werden, um logische Entscheidungen präzise umzusetzen. Ein besonderer Fokus liegt auf der korrekten Syntax und Einrückung, die in Python essenziell für die Strukturierung von Code sind. Anschließend widmet sich das Kapitel den beiden Haupttypen von Schleifen: der while-Schleife und der for-Schleife. Die while-Schleife wird als Werkzeug vorgestellt, um Codeblöcke so lange zu wiederholen, bis eine bestimmte Bedingung nicht mehr erfüllt ist – inklusive der Möglichkeit, Endlosschleifen zu vermeiden und mit while-else-Konstrukten zu arbeiten. Die for-Schleife hingegen eignet sich ideal für die Iteration über Sequenzen wie Listen oder Zeichenketten, wobei die Verwendung von range() und enumerate() detailliert erklärt wird. Praktische Beispiele demonstrieren, wie Schleifen mit anderen Kontrollstrukturen kombiniert werden können, etwa durch verschachtelte for-Schleifen oder die Integration von if-Anweisungen. Abschließend werden Kontrollanweisungen wie break, continue und pass behandelt, die es ermöglichen, Schleifen gezielt zu steuern – sei es durch vorzeitiges Beenden, Überspringen von Iterationen oder das Setzen von Platzhaltern. Die klare Trennung zwischen Theorie und Praxis, unterstützt durch Abbildungen und Tabellen, macht das Kapitel zu einer wertvollen Ressource für alle, die ihre Fähigkeiten in der Python-Programmierung systematisch erweitern möchten.
  7. 6. Funktionen

    Yavuz Can
    Dieses Kapitel bietet einen umfassenden Überblick über die Grundlagen und fortgeschrittenen Anwendungen von Funktionen in Python. Zunächst werden die zentralen Konzepte wie Funktionsdefinition, Parameterübergabe und Rückgabewerte erläutert, um ein solides Fundament für die strukturierte Programmierung zu schaffen. Dabei wird detailliert auf den Aufbau einer Funktion eingegangen – vom Funktionskopf mit Parametern bis zum Funktionskörper und Rückgabewerten – und gezeigt, wie Funktionen durch Kommentare und klare Benennung lesbarer und wartbarer gestaltet werden können. Ein weiterer Schwerpunkt liegt auf der Handhabung von Argumenten: Es wird erklärt, wie Funktionen mit mehreren Parametern umgehen, wie Standardwerte für optionale Argumente gesetzt werden und wie Schlüsselwortargumente die Flexibilität erhöhen. Besonders praxisrelevant sind die Abschnitte zu variablen Argumentanzahlen (∗args und ∗∗kwargs), die es ermöglichen, Funktionen dynamisch mit einer beliebigen Anzahl von Eingaben zu versorgen. Darüber hinaus werden fortgeschrittene Techniken wie lokale und globale Variablen, Verkettung und Verschachtelung von Funktionen sowie der Einsatz von Funktionen als Argumente in anderen Funktionen behandelt. Ein eigenes Kapitel widmet sich rekursiven Funktionen, die sich selbst aufrufen, und Lambda-Funktionen, die als anonyme, einmalige Lösungen für einfache Aufgaben dienen. Abschließend wird die Nutzung von Modulen – sowohl der Python-Standardbibliothek als auch selbst erstellter Module – thematisiert, um Funktionen zentral zu organisieren und wiederzuverwenden. Das Kapitel vermittelt damit nicht nur theoretisches Wissen, sondern zeigt anhand konkreter Code-Beispiele, wie Funktionen modularen, effizienten und wartbaren Code ermöglichen. Professionals erfahren, wie sie durch den gezielten Einsatz von Funktionen komplexe Probleme in handhabbare Teilaufgaben zerlegen und so ihre Produktivität steigern können.
  8. 7. Fehlerbehandlung

    Yavuz Can
    In diesem Kapitel werden die zentralen Mechanismen der Fehlerbehandlung in Python systematisch erläutert, um Programmierfehler gezielt abzufangen und den Programmfluss kontrolliert fortzusetzen. Ein Schwerpunkt liegt auf der Anwendung von try-except-Blöcken, die kritische Codeabschnitte schützen und auf spezifische Fehlertypen reagieren. Sie lernen, wie Sie mit else- und finally-Zweigen differenziert auf erfolgreiche oder fehlgeschlagene Operationen reagieren, etwa bei Benutzereingaben oder Dateizugriffen. Praktische Beispiele zeigen, wie Sie häufige Ausnahmen wie ValueError, ZeroDivisionError oder IndexError abfangen und dem Nutzer verständliche Fehlermeldungen präsentieren. Ein weiterer Fokus liegt auf der sicheren Dateibehandlung mit dem with-Statement, das Dateiobjekte automatisch schließt und Ressourcenlecks verhindert. Zudem wird die gezielte Auslösung von Ausnahmen mit raise demonstriert, um unerwünschte Eingaben frühzeitig zu erkennen. Durch diese Techniken entwickeln Sie Anwendungen, die nicht nur funktional sind, sondern auch benutzerfreundlich und absturzsicher.
  9. 8. Objektorientierte Programmierung OPP

    Yavuz Can
    Dieses Kapitel bietet eine fundierte Einführung in die objektorientierte Programmierung (OOP) mit Python und zeigt, wie komplexe Softwaresysteme durch die Modellierung von Klassen und Objekten strukturiert und organisiert werden können. Im Fokus stehen die zentralen Konzepte der OOP, darunter die Kapselung von Daten und Methoden, die Definition von Klassen und die Initialisierung von Objekten mit dem Konstruktor init. Anhand der Beispiele der Klassen Wolf und Auto werden die Prinzipien der Klassen- und Objekterstellung, der Methodendefinition sowie der Erweiterung durch Vererbung und Modularisierung praxisnah vermittelt. Dabei wird auch auf fortgeschrittene Themen wie das Überschreiben von Methoden und die Zusammenarbeit mehrerer Klassen eingegangen. Ein besonderer Schwerpunkt liegt auf der Vererbung, die es ermöglicht, bestehende Klassen zu erweitern und spezifische Kind-Klassen zu definieren – etwa ein Elektroauto als Erweiterung der allgemeinen Auto-Klasse. Zudem wird die Modularisierung durch den Import von Klassen in separate Dateien behandelt, was die Wartbarkeit und Wiederverwendbarkeit von Code erhöht. Das Kapitel schließt mit einer Anleitung zum Importieren und Verwenden von Klassen in anderen Skripten, um die praktische Anwendung der OOP-Prinzipien zu verdeutlichen. Ideal für Entwickler, die strukturierte und skalierbare Anwendungen erstellen möchten.
  10. 9. Datei lesen, beschreiben und erstellen

    Yavuz Can
    Das Kapitel führt umfassend in die Dateiverarbeitung mit Python ein und deckt dabei mehrere zentrale Themenbereiche ab. Zunächst werden die Grundlagen des Öffnens, Lesens und Schreibens von Textdateien behandelt, inklusive der verschiedenen Zugriffsmodi und der sicheren Handhabung mit dem with-Statement. Anschließend wird die strukturierte Verarbeitung von CSV-Dateien erläutert, wobei sowohl das Auslesen als auch das Erstellen solcher Dateien praxisnah demonstriert wird. Ein weiterer Schwerpunkt liegt auf der Nutzung des os-Moduls, das systemnahe Operationen wie das Umbenennen, Löschen oder Erstellen von Dateien und Verzeichnissen ermöglicht. Besonders wertvoll sind die detaillierten Codebeispiele, die direkt in eigenen Projekten angewendet werden können. Abschließend wird auf die Bedeutung von Fehlerbehandlung und Ressourcenmanagement eingegangen, um typische Fallstricke bei der Dateiverarbeitung zu vermeiden. Wer diese Techniken beherrscht, kann effizienter mit externen Datenquellen arbeiten und robustere Anwendungen entwickeln.
  11. 10. Learning by Doing

    Yavuz Can
    Dieser Fachbeitrag bietet eine umfassende Sammlung von Übungsaufgaben, die systematisch in die Grundlagen der Python-Programmierung einführen. Der Fokus liegt auf der praktischen Anwendung von Rechenoperationen, Variablen, Zeichenketten, strukturierten Daten, Kontrollstrukturen, Funktionen und objektorientierter Programmierung. Beginnend mit einfachen Rechenaufgaben und der Arbeit mit Variablen werden Schritt für Schritt komplexere Konzepte wie mathematische Funktionen, Listen, Dictionaries, Verzweigungen, Schleifen und Fehlerbehebung behandelt. Jedes Thema wird durch gezielte Aufgaben vertieft, die das Verständnis fördern und die Fähigkeit zur eigenständigen Programmierung stärken. Besonders hervorzuheben sind die praxisnahen Beispiele, die direkt im Python-Interpreter umgesetzt werden können, sowie die strukturierte Abfolge der Lernschritte, die einen logischen Lernpfad gewährleistet. Der Beitrag eignet sich ideal für alle, die Python durch Learning by Doing erlernen möchten und dabei nicht nur theoretisches Wissen, sondern auch praktische Programmierfähigkeiten entwickeln wollen.
  12. 11. Lösungen: Learning by Doing

    Yavuz Can
    Dieses Kapitel präsentiert die vollständigen Lösungen zu allen Übungsaufgaben aus dem vorherigen Grundlagenkapitel zur Python-Programmierung. Es ist als praktisches Kontroll- und Lerninstrument konzipiert, das es Lesern ermöglicht, ihre eigenen Lösungswege zu überprüfen, alternative Herangehensweisen kennenzulernen und ein tieferes Verständnis für die Programmierung mit Python zu entwickeln. Die Lösungen sind thematisch nach den Abschnitten des ursprünglichen Kapitels geordnet, was ein gezieltes Nachschlagen und Vergleichen erleichtert. Im Fokus stehen dabei grundlegende Konzepte wie Variablen, Datentypen, mathematische Operationen, Zeichenkettenverarbeitung, Listen, Dictionaries, Verzweigungen, Schleifen und Funktionen. Jede Lösung wird detailliert erklärt, sodass auch komplexere Aufgaben nachvollziehbar werden. Besonders hervorzuheben ist die klare Strukturierung der Lösungen, die es Lesern ermöglicht, ihre eigenen Fehler zu identifizieren und zu korrigieren. Das Kapitel eignet sich ideal für alle, die ihre Python-Kenntnisse durch praktische Anwendung festigen und erweitern möchten. Es bietet nicht nur die richtigen Antworten, sondern auch wertvolle Einblicke in effiziente und elegante Programmierlösungen.
  13. Backmatter

Titel
Grundlagen der Python-Programmierung
Verfasst von
Yavuz Can
Copyright-Jahr
2026
Electronic ISBN
978-3-658-51437-2
Print ISBN
978-3-658-51436-5
DOI
https://doi.org/10.1007/978-3-658-51437-2

Die PDF-Dateien dieses Buches wurden gemäß dem PDF/UA-1-Standard erstellt, um die Barrierefreiheit zu verbessern. Dazu gehören Bildschirmlesegeräte, beschriebene nicht-textuelle Inhalte (Bilder, Grafiken), Lesezeichen für eine einfache Navigation, tastaturfreundliche Links und Formulare sowie durchsuchbarer und auswählbarer Text. Wir sind uns der Bedeutung von Barrierefreiheit bewusst und freuen uns über Anfragen zur Barrierefreiheit unserer Produkte. Bei Fragen oder Bedarf an Barrierefreiheit kontaktieren Sie uns bitte unter accessibilitysupport@springernature.com.

    Bildnachweise
    AvePoint Deutschland GmbH/© AvePoint Deutschland GmbH, ams.solutions GmbH/© ams.solutions GmbH, Wildix/© Wildix, arvato Systems GmbH/© arvato Systems GmbH, Ninox Software GmbH/© Ninox Software GmbH, Nagarro GmbH/© Nagarro GmbH, GWS mbH/© GWS mbH, CELONIS Labs GmbH, USU GmbH/© USU GmbH, G Data CyberDefense/© G Data CyberDefense, Vendosoft/© Vendosoft, Deutsche Telekom MMS GmbH/© Vendosoft, Noriis Network AG/© Noriis Network AG, Asseco Solutions AG/© Asseco Solutions AG, AFB Gemeinnützige GmbH/© AFB Gemeinnützige GmbH, Ferrari electronic AG/© Ferrari electronic AG, Doxee AT GmbH/© Doxee AT GmbH , Haufe Group SE/© Haufe Group SE, NTT Data/© NTT Data, Videocast 1: Standbild/© Springer Fachmedien Wiesbaden, KI-Wissen für mittelständische Unternehmen/© Dell_Getty 1999938268, IT-Director und IT-Mittelstand: Ihre Webinar-Matineen /© da-kuk / Getty Images / iStock