Python von Kopf bis Fuß

Aktuell zu Python 3

Paul Barry

Diese Publikation zitieren

Paul Barry, Python von Kopf bis Fuß (2017), O'Reilly Verlag, Heidelberg, ISBN: 9783960101352

9109
Accesses
69
Quotes

Beschreibung / Abstract

Was lernen Sie in diesem Buch?
Haben Sie sich schon einmal gewünscht, Sie könnten mit nur einem Buch Python richtig lernen? Mit Python von Kopf bis Fuß schaffen Sie es! Durch die ausgefeilte Von-Kopf-bis-Fuß-Didaktik, die viel mehr als die bloße Syntax und typische How-to-Erklärungen bietet, wird es sogar zum Vergnügen. Python-Grundlagen wie Datenstrukturen und Funktionen verstehen Sie hier schnell, und dann geht es auch schon weiter: Sie programmieren Ihre eigene Web-App, erkunden Datenbank-Management, Ausnahmebehandlung und die Verarbeitung von Daten. Da Python häufig im Data-Science-Umfeld eingesetzt wird, haben in der 2. Auflage diejenigen Techniken ein stärkeres Gewicht bekommen, die in der Welt der Big Data genutzt werden.

Wieso sieht dieses Buch so anders aus?
In diesem Buch sind die neuesten Erkenntnisse der Kognitionswissenschaft und der Lerntheorie eingeflossen, um Ihnen das Lernen so einfach wie möglich zu machen. Statt einschläfernder Bleiwüsten verwendet dieses Buch eine Vielzahl von Abbildungen und Textstilen, die Ihnen das Wissen direkt ins Hirn spielen – und zwar so, dass es sitzt.

Beschreibung

Paul Barry lebt und arbeitet in Carlow, Irland, einer kleinen Stadt mit etwa 35.000 Einwohnern ca. 80 km südwestlich der Hauptstadt Dublin. Paul hat einen Titel als B.Sc. in Information Systems sowie als M.Sc. in Computing. Außerdem besitzt er eine Lehrerlaubnis im Bereich Learning and Teaching. Paul arbeitet seit 1995 am Institute of Technology, Carlow und hält dort seit 1997 Vorlesungen. Vor seiner Lehrtätigkeit verbrachte Paul ein Jahrzehnt in der IT-Industrie und arbeitete in Irland und Kanada, meistens im Gesundheitswesen. Paul ist mit Deirdre verheiratet, und gemeinsam haben sie drei Kinder (Joseph, Aaron und Aideen, von denen zwei inzwischen selbst studieren). Die Programmiersprache Python und verwandte Technologien sind seit 2007 ein integraler Bestandteil von Pauls Vordiplom-Kursen. Paul ist Autor (oder Koautor) von vier weiteren technischen Büchern: zwei über Python und zwei über Perl. In der Vergangenheit hat er als Redakteur für das Linux Journal Magazine eine Menge Artikel geschrieben. Aufgewachsen ist Paul in Belfast, Nordirland, was seine Persönlichkeit und seinen lustigen Akzent erklärt (es sei denn, Sie stammen selbst "aus dem Norden", und empfinden Pauls Wesen und Akzent als vollkommen normal). Paul finden Sie auf Twitter (@barrypj) und auf seiner Website unter "paulbarry.itcarlow.ie".

Inhaltsverzeichnis

  • BEGINN
  • Inhaltsverzeichnis
  • Einführung
  • Für wen ist dieses Buch?
  • Wir wissen, was Sie gerade denken
  • Und wir wissen, was Ihr Gehirn gerade denkt.
  • Metakognition: Nachdenken übers Denken
  • Das haben WIR getan:
  • Lies mich
  • 1 Die Grundlagen
  • Die IDLE-Fenster verstehen
  • Code ausführen, eine Anweisung nach der anderen
  • Funktionen + Module = Standardbibliothek
  • Datenstrukturen sind schon eingebaut
  • Methodenaufrufe haben Ergebnisse
  • Entscheiden, wann Codeblöcke ausgeführt werden
  • Welche »else« will schon mit »if«?
  • Suiten können selbst Suiten enthalten
  • Zurück zur Python-Shell
  • Experimente auf der Shell
  • Über eine Folge von Objekten iterieren
  • Eine bestimmte Anzahl von Wiederholungen ausführen
  • Das Ergebnis von Aufgabe 1 auf unseren Code anwenden
  • Die Ausführung unterbrechen
  • Zufallszahlen mit Python erzeugen
  • Eine ernsthafte Businessapplikation programmieren
  • Machen die Einrückungen Sie verrückt?
  • Mit dem help-Befehl des Interpreters den Hilfetext zu einer Funktion anzeigen
  • Mit Wertebereichen experimentieren
  • Der Code aus Kapitel 1
  • 2 Listendaten
  • Zahlen, Strings … und Objekte
  • Die vier eingebauten Datentypen
  • Eine ungeordnete Datenstruktur: Dictionary
  • Eine Datenstruktur ohne Duplikate: Set
  • Literale Erzeugung von Listen
  • Wenn Sie mit mehr als ein paar Codezeilenarbeiten, sollten Sie den Editor benutzen
  • Eine Liste zur Laufzeit »wachsen lassen«
  • Zugehörigkeit mit »in« überprüfen
  • Objekte aus einer Liste entfernen
  • Eine Liste mit Objekten erweitern
  • Objekte in eine Liste einfügen
  • Datenstrukturen richtig kopieren
  • Listen erweitern die Schreibweise der eckigen Klammern
  • Listen verstehen start, stop und step
  • start- und stop-Werte für Listen
  • Listen mithilfe von Slices bearbeiten
  • Pythons »for«-Schleife versteht Listen
  • Marvins Slices im Detail
  • Wann man Listen nicht benutzen sollte
  • Der Code aus Kapitel 2, 1 von 2
  • 3 Strukturierte Daten
  • Ein Dictionary speichert Schlüssel/Wert-Paare
  • Dictionaries im Code erkennen
  • Reihenfolge des Einfügens wird NICHTbeibehalten
  • Werte mithilfe eckiger Klammern nachschlagen
  • Zur Laufzeit mit Dictionaries arbeiten
  • Einen Frequenzzähler aktualisieren
  • Über ein Dictionary iterieren
  • Über Schlüssel und Werte iterieren
  • Mithilfe von »items« über ein Dictionary iterieren
  • Wie dynamisch sind Dictionaries wirklich?
  • KeyError-Laufzeitfehler vermeiden
  • Vorhandensein mit »in« überprüfen
  • Initialisierung vor Gebrauch sicherstellen
  • »in« durch »not in« erse tzen
  • Die »setdefault«-Methode verwenden
  • Sets effektiv erzeugen
  • Set-Methoden sinnvoll nutzen
  • Ein Plädoyer für Tupel
  • Eingebaute Datenstrukturen kombinieren
  • Auf Daten einer komplexen Datenstruktur zugreifen
  • Der Code aus Kapitel 3, Seite 1 von 2
  • 4 Code wiederverwenden
  • Code mithilfe von Funktionen wieder verwenden
  • Einführung in Funktionen
  • Rufen Sie Ihre Funktionen auf
  • Funktionen können Argumente übernehmen
  • Einen Wert zurückgeben
  • Mehr als einen Wert zurückgeben
  • Eingebaute Datenstrukturen: Wiederholung
  • Eine allgemein nützliche Funktion erstellen
  • Eine neue Funktion erstellen, 1 von 3
  • Standardwerte für Argumente definieren
  • Positionelle und Schlüsselwortzuweisung im Vergleich
  • Aktualisierung unseres Wissens über Funktionen
  • Python auf der Kommandozeile ausführen
  • Die erforderlichen Setup-Dateien erstellen
  • Eine Distributionsdatei erstellen
  • Pakete mit »pip« installieren
  • Demonstration von Werteparametern
  • Demonstration von Referenzparametern
  • Die Entwicklerwerkzeuge zum Testen installieren
  • Wie PEP 8–konform ist unser Code?
  • Die Fehlermeldungen verstehen
  • Der Code aus Kapitel 4
  • 5 Eine Webapplikation erstellen
  • Python: Was Sie bereits wissen
  • Was soll unsere Webapplikation können?
  • Flask installieren
  • Wie funktioniert Flask?
  • Die Flask-Web-App zum ersten Mal ausführen
  • Ein Flask-Webapplikationsobjekt erzeugen
  • Eine Funktion mit einer URL dekorieren
  • Das Verhalten Ihrer Webapplikation testen
  • Funktionalität im Web bereitstellen
  • Das HTML-Formular erstellen
  • Templates beziehen sich auf Webseiten
  • Templates mit Flask rendern
  • Das Formular der Webapplikation anzeigen
  • Vorbereitungen zum Ausführen des Template-Codes
  • HTTP-Statuscodes verstehen
  • Mit POST-Daten umgehen
  • Den Zyklus aus Bearbeiten, Anhalten, Starten und Testenoptimieren
  • Mit Flask auf Formulardaten zugreifen
  • Die Formulardaten in der Webapplikation verwenden
  • Die Ergebnisse als HTML ausgeben
  • Die Webapplikation für die Cloud vorbereiten
  • Der Code aus Kapitel 5
  • 6 Daten speichern und bearbeiten
  • Etwas mit den Daten Ihrer Webapplikation anstellen
  • Python unterstützt die Öffnen-Bearbeiten-Schließen-Technik
  • Daten aus einer bestehenden Datei lesen
  • Eine bessere Version von Öffnen-Bearbeiten-Schließen: »with«
  • Das Protokoll von der Webapplikation anzeigen lassen
  • Die Rohdaten per »Quelltext anzeigen« untersuchen
  • Es ist Zeit, Ihre Daten zu escapen
  • Die gesamte Log-Datei in der Webapplikation betrachten
  • Bestimmte Attribute des Web-Requests protokollieren
  • Eine Zeile voneinander ge trennter Datenfelder protokollieren
  • Von Rohdaten zu lesbaren Ausgaben
  • Lesbare Ausgaben mit HTML erzeugen
  • Darstellungslogik in das Template integrieren
  • Mit Jinja2 lesbare Ausgaben erzeugen
  • Der aktuelle Status Ihres Webapplikationscodes
  • Die Daten befragen
  • Der Code aus Kapitel 6
  • 7 Datenbanken benutzen
  • Die Webapplikation für die Benutzung von Datenbanken vorbereiten
  • Aufgabe 1: Den MySQL-Server installieren
  • Einführung in die DB-API von Python
  • Aufgabe 2: Einen MySQL-Datenbanktreiber für Python installieren
  • MySQL-Connector/Python installieren
  • Aufgabe 3: Die Datenbank und die nötigen Tabellen für die Webapplikation erstellen
  • Eine Struktur für Ihre Log-Daten definieren
  • Bestätigen Sie, dass die Tabelle für die Daten bereit ist
  • Aufgabe 4: Den Code für die Datenbank und die Tabellen unserer Webapplikation schreiben
  • Daten speichern ist die halbe Miete
  • Wie kann der Datenbankcode am besten wieder verwendet werden?
  • Überlegen Sie, was Sie hier wieder verwenden wollen
  • Und was ist mit import?
  • Sie kennen dieses Muster bereits
  • So schlecht sind die schlechten Nachrichten gar nicht
  • Der Code aus Kapitel 7
  • 8 Ein bisschen Klasse
  • Sich in die »with«-Anweisung einklinken
  • Kurze Einführung in Objektorientierung
  • Objekte aus Klassen erzeugen
  • Objekte übernehmen das Verhalten, aber nicht den Zustand
  • Mehr mit CountFromBy anfangen
  • Methodenaufrufe: Die Details verstehen
  • Methoden einer Klasse hinzufügen
  • Die Bedeutung von »self«
  • Die Gültigkeit von Geltungsbereichen
  • Stellen Sie Ihren Attributnamen »self« voran
  • (Attribut-)Werte vor Gebrauch initialisieren
  • __init__ initialisiert Attribute
  • Attribute mit »__init__« initialisieren
  • Die Darstellung von CountFromBy verstehen
  • Die Darstellung von CountFromBy selbst definieren
  • Sinnvolle Standardwerte für CountFromBy
  • Klassen: Was wir bereits wissen
  • Der Code aus Kapitel 8
  • 9 Das Kontextmanagement-Protokoll
  • Wie können wir den Code unserer Webapplikation am besten mit anderen teilen?
  • Kontext anhand von Methoden verwalten
  • Sie kennen den Kontextmanager bereits
  • Eine neue Klasse für den Kontextmanager erstellen
  • Die Klasse mit der Datenbankkonfiguration initialisieren
  • Se tup mit »__enter__«
  • Teardown mit »__exit__«
  • Den Code der Webapplikation überdenken, Teil 1 von 2
  • Die »log_request«-Funktion auf dem Prüfstand
  • Die »log_request«-Funktion anpassen
  • Die »view_the_log«-Funktion auf dem Prüfstand
  • Nicht nur der Code ändert sich
  • Die »view_the_log«-Funktion anpassen
  • Die Datenfragen beantworten
  • Der Code aus Kapitel 9, 1 von 2
  • 10 Funktionsdekoratoren
  • Der Webserver (nicht Ihr Computer) führt den Code aus
  • Zustandsverwaltung mit Flasks Sessions
  • Den Zustand im Dictionary nachschlagen
  • Anmeldevorgänge mit Sessions verwalten
  • Log-out und Status überprüfen
  • Eine Funktion an eine Funktion übergeben
  • Eine übergebene Funktion aufrufen
  • Eine Liste mit Argumenten übernehmen
  • Eine Liste mit Argumenten verarbeiten
  • Ein Dictionary mit Argumenten übernehmen
  • Ein Dictionary mit Argumenten verarbeiten
  • Funktionsargumente von beliebiger Zahl und beliebigem Typ übernehmen
  • Einen Funktionsdekorator erstellen
  • Der letzte Schritt: Mit Argumenten umgehen
  • Der Dekorator im praktischen Einsatz
  • Zurück zur Zugangsbeschränkung für /viewlog
  • Der Code aus Kapitel 10, Teil 1 von 2
  • 11 Mit Ausnahmen umgehen
  • Datenbanken sind nicht immer verfügbar
  • Angriffe aus dem Web können richtig nerven
  • Ein- und Ausgaben sind (manchmal) langsam
  • Funktionsaufrufe können fehlschlagen
  • Versuchen Sie immer, möglicherweise fehlerhaften Code auszuführen
  • Ein try, viele excepts
  • Ein Handler, sie zu knechten …
  • Mit »sys« mehr über Ausnahmen erfahren
  • Noch mal: der »catch all«-Ausnahme-Handler
  • Zurück zum Code unserer Webapplikation
  • Ausnahmen leise handhaben
  • Mit anderen Datenbankfehlern umgehen
  • Vermeiden Sie eng verbundenen Code
  • Wiedersehen mit dem DBcm-Modul
  • Eigene Ausnahmen erstellen
  • Was kann mit »DBcm« noch schiefgehen?
  • Die Behandlung von SQLError funktioniert anders
  • Einen SQLError auslösen
  • Ein schneller Rückblick: Robustheit hinzufügen
  • Wie mit Wartezeiten umgehen? Kommt drauf an …
  • Der Code aus Kapitel 11, 1 von 3
  • 11¾ Ein bisschen Threading
  • Warten: Was ist zu tun?
  • Wie fragen Sie Ihre Datenbank ab?
  • Datenbank-INSERTs und -SELECTs sind verschieden
  • Mehrere Dinge gleichzeitig tun
  • Keine Sorge. Benutzen Sie Threads
  • Das Wichtigste zuerst: keine Panik
  • Keine Sorge: Flask kann helfen
  • Ist Ihre Webapplikation jetzt robust?
  • Der Code aus Kapitel 11¾, 1 von 2
  • 12 Fortgeschrittene Iteration
  • CSV-Daten als Listen einlesen
  • CSV-Daten als Dictionaries einlesen
  • Rohdaten säubern und trennen
  • Vorsicht beim Verketten von Methodenaufrufen
  • Daten in das benötigte Format umwandeln
  • Die Daten in ein Dictionary mit Listen umwandeln
  • Das Programmiermuster bei Listen erkennen
  • Programmiermuster in Comprehensions umwandeln
  • Ein genauerer Blick auf Comprehensions
  • Eine Dictionary-Comprehension def inieren
  • Comprehensions mit Filtern erweitern
  • Pythons Weg für den Umgang mit Komplexität
  • Set-Comprehensions in Aktion
  • Und was ist mit »Tupel-Comprehensions«?
  • Runde Klammern um Code == Generator
  • URLs mit einer Listen-Comprehension verarbeiten
  • URLs mit einem Generator verarbeiten
  • Definieren Sie, was Ihre Funktion tun soll
  • Die Macht der Generatorfunktionen
  • Die Generatorfunktion aufspüren, Teil 1 von 2
  • Eine letzte Frage
  • Der Code aus Kapitel 12
  • Wir sind dann mal weg …
  • Anhang
  • Anhang A: Installation
  • Anhang B: PythonAnywhere
  • Anhang C: Die 10 wichtigsten Dinge,die wir nicht behandelt haben
  • Anhang D: Die 10 wichtigsten Projekte,die wir nicht behandelt haben
  • Anhang E: Mitmachen
  • Index

Mehr von dieser Serie

    Ähnliche Titel

      Mehr von diesem Autor