Python 3 green and yellow

Python 3 Tutorial

Für Anfängerinnen und Anfänger stellt sich häufig die Frage, mit welcher Python-Version man anfangen soll, d.h. eine Version 2.x (aktuell, Stand Februar 2014: 2.7.4) oder eine 3.x (aktuell, Stand Februar 2014: 3.34). Wenn man die Wahl hat, sollte man auf jeden Fall mit Python 3 beginnen, denn dieser gehört die Zukunft. Wir bieten Ihnen hier ein vollständiges Tutorial, was sich als schneller Einstieg mit vielen praktischen Beispielen und erläuternden Illustrationen bestens für Anfänger - sowohl totale Programmieranfänger als auch Umsteiger von anderen Programmiersprachen - eignet. Aber auch fortgeschrittene Programmierer finden sicherlich noch viele interessante Themen und Einblicke. Nach dem Durcharbeiten der einzelnen Kapitel sollte man in der Lage sein, selbständig Programme zu schreiben und Module zu verwenden.

Neuigkeiten

März 2024:
Neue Kapitel:

Überarbeitete Kapitel:

Februar 2024:
Die Kapitel "Erstellen von unveränderlichen Klassen in Python" und "dataclass Datenklassen in Python" wurden überarbeitet und um eine Übungsaufgabe erweitert.

Januar 2024:
Das neue Jahr hat kaum begonnen, und wir haben schon einen neuen Kurs-Inhalt: In dem Kapitel "Komposition von Funktionen" geht es wie der Name vermuten lässt um die Komposition oder Verknüpfung von Funktionen in Python.

Dezember 2023:
Das Tutorial zu objektorientierter Programmierung (OOP) wurde um zwei neue Seiten erweitert: Erstellen von unveränderlichen Klassen in Python" und Sie können nun lernen, wie man mit dataclass Datenklassen in Python" einfach erzeugt.

November 2023:
  • Neues aus der Python-Küche: Currying mit Python
  • Nun haben wir auch das Kapitel über for-Schleifen grundlegend überarbeitet und ebenfalls um 7 neue Aufgaben mit Musterlösungen erweitert.
Oktober 2023:
Das Kapitel über while-Schleifen wurde überarbeitet und um 7 neue Aufgaben mit Musterlösungen erweitert.

Juni 2023:
Nach den Kursen über Bilder und Videos mit Python haben wir uns im Juni wieder grundsätzlichen Python-Themen aus der OOP und funktionalen Programmierung zugewendet:
  • In unserem Kurs "OOP" haben wir ein neues Kapitel hinzugefügt. Es handelt sich um ein umfangreiches Beispiel einer Python-Klasse - Polynom-Klasse, die den Umgang mit Polynomen besonders leicht macht und die besondere Eleganz von Python und der Operator-Überladung eindringlich demonstriert
  • Das Kapitel über Dekorateure haben wir verbessert und um weitere Beispiele von Dekorateuren ergänzt.
Mai 2023:
Es gibt eine Fortsetzung zum Thema "Python, Bilder und Videos", d.h. eine neue Schulung mit dem Titel "Videos mit beweglichen Objekten" (Bernd Klein)
April 2023:
Wir haben unserem Python-Tutorial mehrere neue Kurse hinzugefügt:
  • In unserer Sektion "Numerisches Python" gibt es zwei neue Kapitel zu Pandas. In beiden geht es um groupby. Eine allgemeine Einführung zur Gruppierung mittels groupby und weitere Beispiele zu diesem Thema
  • Ein weiteres neues Tutorial beschäftigt sich mit umfangreiches Beispiel über das Arbeiten mit Mengen in Python. Hier werden berühmte Romane der Weltliteratur mit Python statistisch analysiert.
  • In einem weiteren neuen Tutorial zeigen wir denjenigen, die an Bildverarbeitung und und Erzeugung von Videos mit Python interessiert sind, die Erzeugung von Videos aus einem oder mehreren Bildern oder Photos.

    Ich habe diese Technik verwendet, um Videos für eine Musikkomposition von mir zu erstellen. Die Videos sind bei YouTube zu finden:

    Die Musik ist in beiden Videos die gleiche. Ein Musikstück für Streichorchester und Solocello. Die Tonspur habe ich mit dem Linux-Programm kdenlive hinzugefügt.

    Weitere Musik-Videos von mir, aber auch Python-Videos, findet man in meinem Channel Bernd Klein. Es werden weitere Python-Videos folgen. Es lohnt sich also zu abonnieren!

März 2023:
Im März habe ich zwei neue Kapitel für den online Python-Kurs fertig gestellt. In dem einem zeige ich, was Walrosse mit Python zu tun haben, d.h. Walross-Operatoren
Im zweiten Kapitel geht geht es auch um ein neues Feature von Python nämlich der Struktureller Musterabgleich (Bernd Klein)
April 2021:
Das Kapitel über Generatoren wurde komplett neu bearbeitet und mit Syntax-Highlighting versehen. (Melisa, Bernd)
März 2021:
Es gibt weitere Fortschritte bei der Übersetzung meiner englischen Einführung zum maschinellen Lernen: Für die folgenden Kapitel gilt mein besonderer Dank Dr. Konrad Wienands, der diese für unsere Webseite aus dem Englischen übersetzt hat:
Februar 2021:
In den letzten Tagen habe ich von früh morgens bis spät Abends an der Webseite gearbeitet. Es gibt nun endlich die ersten Kapiteln zum maschinellen Lernen: Dabei handelt es sich um eine Übersetzung und Überarbeitung meiner englischen Einführung ins Machine Learning, welches ich bereits im Januar 2017 begonnen hatte..
Außerdem habe ich die ersten drei Kapitel meiner Einführung in die OOP komplett überarbeitet.

Januar 2021:
Entfernung des Python2-Tutorial, da Python2 nun endgültig Geschichte ist bzw. sein sollte. Außerdem habe ich die Gleiderung des Tutorial überarbeitet, d.h. neue Sektionen eingeführt.
Oktober 2020:
Das Kapitel über Rekursive Funktionen wurde völlig überarbeitet und mit zusätzlichen interessanten Beispielen und Aufgaben angereichert!
September 2020:
Es wird nun farbig im Tutorial! Nachdem es lange Zeit nur Änderungen auf der englischen Webseite gab, haben wir nun auch auf der deutschen Webseite ein großes Projekt in Angriff genommen. Melisa Atay arbeitet hart daran, die vorhandenen HTML-Dateien in Jupyter-Notebooks umzuwandeln, die dann automatisch in HTML umgewandelt werden. Auf diese Weise erhalten die Codelistings eine Syntaxhervorhebung. Dabei wird sie natürlich auch die Beispiele und Texte anpassen.
Oktober 2016:
Im Laufe der letzten Monate wurden mehrere Kapitel unseres Python3-Tutorials in englischer Sprache ins Deutsche übersetzt, so dass das gesamte Tutorial nun auch vollständig in Deutsch vorliegt. Es handelt sich um die Kapitel:
September 2015:
Überarbeitung des Kapitels über "Memoisation.

Juli 2015:
Neues Kapitel über "Slots hinzugefügt.

März 2014:
Im ersten Quartal von 2014 haben wir das Kapitel über objektorientierte Programmierung nahezu komplett umgeschrieben, erweitert und verbessert. Das alte Kapitel "Klassen" befindet sich nicht mehr im Index auf der linken Seite, weil wir es durch die folgenden fünf Kapitel ersetzt haben: Ausgedruckt ergeben diese fünf Kapitel 65 Seiten statt bisher 12 Seiten. Damit dürfte es zu den umfangreichsten im Internet verfügbaren Einführungen in die objektorientierte Programmierung mit Python in Deutsch gehören. Insgesamt sind ca. 200 Arbeitsstunden alleine in diese Verbesserung und Erweiterung geflossen. Dies nur als Anmerkung für unflätige Flamer, die uns Hass-Emails schreiben, wenn mal ein Doppelpunkt oder Komma falsch steht!

Mithilfe erwünscht

Niemand und nichts ist perfekt. Wir hätten gerne ein perfektes Python-Tutorial. Deshalb sind wir ständig dabei diese Webseite zu verbessern, d.h. neue Inhalte hinzuzufügen, Kapitel zu erweitern und Fehler zu verbessern. Ja, und da wären wir beim Thema: Fehler sind immer ärgerlich für die Besucherinnen und Besucher unserer Tutorials und auch für die Autoren. Wir freuen uns deshalb, wenn wir Informationen über Unstimmigkeiten erhalten. Seien es
  • Flüchtigkeitsfehler
  • Fehler in den Beispielprogrammen oder Übungen
  • Fehler im Aufbau, d.h. man kann den Erklärungen an einer bestimmten Stelle nicht richtig folgen oder die Erklärung scheint nicht ganz stimmig zu sein.
  • was auch immer sonst
Sie erreichen uns ganz einfach über den Kontakt-Link ganz oben rechts!
Herzlichen Dank!

Spenden

Ihre Unterstützung ist dringend benötigt. Diese Webseite ist frei von Werbeblöcken und -bannern! So soll es auch bleiben! Dazu benötigen wir Ihre Unterstützung:

Weshalb wir Ihre Spende benötigen erfahren Sie hier

Werbung

Viele finden es toll, dass dieses Tutorial nahezu ohne Werbung auskommt. Allerdings befinden sich auf der rechten Seite Eigenwerbung für Schulungen von Bernd Klein, dem Autor dieser Webseite, sowie auf der linken Seite Werbung für das Buch vom Autor.

Tutorial in Papierform

Wir werden immer wieder gefragt, ob man sich das Tutorial in schöner Form zum Offline-Arbeiten herunterladen kann. Es gibt keine PDF-Version zum Download dieser Webseite. Wenn Sie jedoch die Druckfunktion Ihres Browsers benutzen, werden Sie sehen, dass in der Druckversion nur der Inhalt der mittleren Spalte erscheint. Der Ausdruck wirkt dadurch sehr buchähnlich. Man kann den Ausdruck auch selbst als PDF in eine Datei ausdrucken, wenn man will.
Betrachtet man allerdings die Papierkosten und die Druckerkosten für den Ausdruck, stellt sich die Frage, ob es nicht günstiger ist, sich das Buch zu kaufen. Dann hat man den Inhalt in besonders schöner und ansprechender Form. Nebenbei honoriert man dadurch auch die Arbeit des Autors.

Grundlagen von Python

  • Das erste Kapitel beschäftigt sich mit der Entstehung und der Philosophie von Python: Geschichte von Python
  • Dann zeigen wir, wie man sehr schnell mit der interaktiven Shell erste kleine Erfolge verbuchen kann: Interaktiver Modus
  • Wie lässt sich Code ausführen und was passiert hinter den Kulissen von Python?
  • Python hat einen unorthodoxen Stil seine Skripte in Blöcke zu strukturieren.
  • Auch bei den Datentypen und Variablen ist vieles anders aber vor allen Dingen klarer als in anderen Programmiersprachen.
  • Die Operatoren sind hingegen so, wie man sie kennt und erwartet.
  • Python brilliert durch die Klarheit und Konsequenz mit der Sequentielle Datentypen wie Strings, Listen und Tupel wo immer es geht einheitlich behandelt werden.
  • im Kapitel Listen zeigen wir, wie man Listen mit den Methoden "pop", "insert", "append", "extend" und "remove" manipulieren kann. Außerdem demonstrieren wir, wie man Elemente in Listen finden kann.
  • Ein weiterer häufig genutzter Datentyp in Python sind die Mengen.
  • Hashes oder assoziative Arrays kennt man in Python als Dictionaries
  • Wenn es ums Kopieren von Listen und anderen Datenstrukturen geht, machen Anfänger gerne mal Fehler. Deshalb lohnt sich ein Blick in unser Kapitel "Flaches und tiefes Kopieren" in unserem Tutorial.
  • Was wäre eine Programmiersprache ohne die Möglichkeit von Benutzereingaben? Die Antwort ist klar. Sie wäre kaum sinnvoll nutzbar. Deshalb geht es in diesem Kapitel unseres Python-Tutorials um Benutzereingaben mit input .
  • Bedingte Anweisungen sind in Python so, wie man sie aus den meisten anderen Sprachen kennt.
  • Die while-Schleife ist wie gewohnt. Allerdings hat sie mit dem optionalen else-Zweig ein Feature was gerne übersehen und unterschätzt wird.
  • Die for-Schleife ähnelt der for-Schleife, wie man sie aus der Bash-Shell kennt.
  • Ausgaben mit print
  • Man will die Ausgaben eines Programmes natürlich in schöner und übersichtlicher Darstellung sehen, also eine formatierte Ausgabe
  • Die Funktionen zeichnen sich auch durch eine einfache und leicht zugängliche Syntax aus.
  • Wie sieht die Parameterübergabe in Python aus? Wertübergabe (Call by Value) oder Referenzübergabe (Call by Reference)?
  • Um Namensräume und Gültigkeitsbereiche von Variablen geht es in unserem Kapitel "Globale und lokale Variablen"
  • Fast alle größeren Skripte und Programme müssen lesend und schreibend auf Dateien zugreifen können.
  • Dann können Sie lernen, wie einfach man Module in Python erstellen kann.
  • Irgendwann kommt unweigerlich der Punkt, an dem man Module in Paketen zusammenfassen will oder muss.
  • Die Ausnahmebehandlung ist für viele Programmierer traditioneller Programmiersprachen wie C und Fortran ein unbekanntes Konzept, was sie häufig meiden, auch wenn Sie es in Python oder Java nutzen können.