Ein Kurs von David Beazley (https://www.dabeaz.com)
Urheberrecht (C) 2007-2024
Ein übungsorientierter Kurs zur fortgeschrittenen Python-Programmierung, der sich mehr als ein Jahrzehnt lang mehrere hundert Mal im Rahmen von Unternehmensschulungen bewährt hat. Geschrieben von David Beazley, Autor des Python Cookbook, 3rd Edition (O'Reilly) und Python Distilled (Addison-Wesley). Veröffentlicht unter einer Creative Commons-Lizenz. Frei von Werbung, Tracking, Pop-ups, Newslettern und KI.
Alles in diesem Kurs sollte mit der neuesten Version von Python funktionieren. Beachten Sie jedoch, dass der Kurs hauptsächlich auf den Funktionsumfang von Python 3.6 abzielt. Daher werden bestimmte moderne Funktionen nicht abgedeckt. Ehrlich gesagt sollte Sie das nicht sonderlich beeinträchtigen, es sei denn, Sie versuchen, unglaublich cleveren Code zu schreiben.
Dieser Kurs richtet sich an Python-Programmierer, die über kurze Skripte hinausgehen und anspruchsvollere Programme schreiben möchten. Um dies zu erreichen, ist es hilfreich, die in gängigen Bibliotheken und Frameworks verwendeten Programmiertechniken besser zu verstehen. Daher richtet sich dieser Kurs hauptsächlich an Programmierer, die ein umfassenderes mentales Modell der Python-Sprache selbst und ihrer Funktionsweise erstellen möchten. Letztlich geht es darum, dieses Wissen auf eigene Projekte anwenden zu können.
Sie kennen sich bereits mit Python aus. Dies ist kein Kurs für Anfänger. Weiteres Einführungsmaterial finden Sie im Kurs „Praktische Python-Programmierung“.
Um an dem Kurs teilzunehmen, sollten Sie zunächst das GitHub-Repo auf Ihren eigenen Computer forken/klonen.
Es wird davon ausgegangen, dass Sie lokal in einer geeigneten Python-Entwicklungsumgebung arbeiten. Das bedeutet eine ordnungsgemäße Installation von Python, einem Editor/IDE und allen anderen Tools, die Sie normalerweise installieren würden, um mit Python zu arbeiten. Aufgrund der Verwendung mehrerer Dateien und Modulimporte wird die Verwendung von Notebooks nicht empfohlen.
Die Datei PythonMastery.pdf
enthält detaillierte Präsentationsfolien. Kursübungen und vorgeschlagene Zeiten sind deutlich gekennzeichnet. Sie sollten dies immer griffbereit haben (ich empfehle, es herunterzuladen und mit einem lokalen PDF-Viewer anzuzeigen). Beginnen Sie hier!
Im Verzeichnis Übungen/ finden Sie alle Kursübungen.
Das Verzeichnis Solutions/ enthält den vollständig ausgearbeiteten Lösungscode.
Das Data/-Verzeichnis enthält einige Datendateien, die während des Kurses verwendet werden.
Der Kurs wurde ursprünglich über einen Zeitraum von 4 bis 5 Tagen im Präsenzunterricht mit einer Mischung aus Vorlesungen und praktischen Übungen abgehalten. Für den erfolgreichen Abschluss des Kurses sind voraussichtlich 30–50 Arbeitsstunden erforderlich. Die Übungen bauen meist aufeinander auf. Es werden immer Lösungen bereitgestellt, falls Sie nicht weiterkommen.
Der Advanced Python Mastery-Kurs bot häufig ausführlichere Tutorials zu ausgewählten Themen an. Diese wurden auf der PyCon-Konferenz vorgestellt und könnten von Interesse sein:
F: Sind Videos verfügbar?
A: Nein. Sie können die Präsentationsfolien mit technischen Informationen schneller lesen. Allerdings ist das Video „Python Programming Language: LiveLessons“, das auf der Safari-Website von O'Reilly verfügbar ist, eng mit dem Material in diesem Kurs verknüpft.
F: Kann ich diese Materialien in meinem eigenen Kurs verwenden?
A: Ja. Ich bitte nur um eine korrekte Quellenangabe.
F: Akzeptieren Sie Fehlerberichte oder Pull-Requests?
A: Wenn Sie einen Fehler gefunden haben, melden Sie ihn bitte! Es geht mir jedoch nicht darum, die Kursinhalte durch neue Themen oder Übungen zu erweitern oder neu zu organisieren.
F: Sind die Präsentationsfolien in einem anderen Format als PDF verfügbar?
A: Nein.
F: Gibt es ein Forum/Chat, in dem der Kurs besprochen werden kann?
A: Sie können GitHub-Diskussionen nutzen, um den Kurs zu besprechen.
F: Warum wurde Thema/Tool/Bibliothek X nicht abgedeckt?
A: Der Kurs wurde so konzipiert, dass er in einem intensiven 4-tägigen Präsenzformat absolviert werden kann. Es ist einfach nicht möglich, absolut alles abzudecken. Daher konzentriert sich der Kurs hauptsächlich auf die Kernsprache Python und nicht auf Bibliotheken oder Tools von Drittanbietern.
F: Warum werden Funktionen wie Eingabe, Asynchronität oder Mustervergleich nicht abgedeckt?
A: Hauptsächlich ist es eine Frage des zeitlichen Ablaufs und des Umfangs des Kalenders. Das Kursmaterial wurde hauptsächlich vor der Pandemie entwickelt und repräsentiert Python in seiner damaligen Form. Einige Themen (z. B. Tippen oder Async) sind so komplex, dass sie besser in einem separaten Kurs behandelt werden sollten.
F: Haben Sie Pläne, den Kurs zu modernisieren?
A: Ich beabsichtige, dass sich alles im Kurs auf die neueste Version von Python bezieht. Sofern Python keine abwärtsinkompatiblen Änderungen an der Kernsprache vornimmt, sollte dies gelten. Obwohl der Kurs nicht alle neuen Funktionen abdeckt, schließe ich zukünftige Änderungen nicht aus. Viel hängt jedoch von meiner verfügbaren Zeit und meinem Interesse ab. Ich mache also keine Versprechungen.
F: Warum haben Sie den Kurs veröffentlicht?
A: Dieser Kurs wurde vor der Pandemie ausführlich unterrichtet. Nach der Pandemie hat sich mein Unterricht auf Projekte und CS-Grundlagen verlagert. Aber warum sollte ein guter Kurs einfach auf meinem Computer liegen bleiben?
F: Wie kann ich helfen?
A: Wenn Ihnen der Kurs gefällt, können Sie ihn am besten unterstützen, indem Sie anderen Menschen davon erzählen.
>>>
Fortgeschrittene Python-Beherrschung
...
Ein Kurs von dabeaz
...
Urheberrecht 2007-2023
. Dieses Werk ist unter einer Creative Commons Attribution-ShareAlike 4.0 International License lizenziert