Schrödinger programmiert Python

Schrödinger programmiert Python
Das etwas andere Fachbuch. Durchstarten mit Python!
Sofort lieferbar | Lieferzeit: Sofort lieferbar I

44,90 €*

Alle Preise inkl. MwSt.| Versandkostenfrei
Artikelnummer:
9783836267458
Veröffentlichungsdatum:
2021
Erscheinungsdatum:
01.06.2021
Seiten:
667
Autor:
Stephan Elter
Gewicht:
1610 g
Format:
235x202x41 mm
Serie:
Rheinwerk Computing
Sprache:
Deutsch
Langbeschreibung
Vom Feinsten! Lerne Python so, dass es Spaß macht und du alles behältst! Schrödinger taucht voll ein und ist begeistert von der vielseitigen Sprache - und du bist dabei. Vom Maker-Projekt bis zur KI liegt ihr mit Python genau richtig. Damit alles gut funktioniert, knöpft ihr zwei euch erst einmal die Sprachgrundlagen vor und fangt dabei ganz vorne an. Dabei lernt ihr direkt so zu programmieren, dass ihr auch in größeren Projekten guten Code schreibt. Schrödinger hilft dir gleich doppelt beim Lernen: Mit einem Kumpel bleibt nicht nur mehr hängen. Er stellt auch viele Fragen - und nicht selten die, die du auch gerade stellen wolltest.Zu allen Themen gibt erst Erklärungen und dann Aufgaben: Mal entsteht eine Anwendung, mal gibt es Code zu reparieren, und am Ende gibt es Übungen und Fragen, die sicherstellen, dass ihr alles verstanden habt.Fantastisch illustriert. Für Einsteiger, Umsteiger und Fans.
Hauptbeschreibung
Spaß und Erfolg: Lesen - Mitmachen - Üben
Inhaltsverzeichnis
Schrödingers Büro ... 4Schrödingers Werkstatt ... 6Schrödingers Wohnzimmer ... 8Impressum ... 10Inhaltsverzeichnis ... 12Vorwort ... 221. Schrödinger startet durch -- mit Python! -- Python, erste schnelle Schritte ... 23Die Programmiersprache Python! ... 25Das Zen of Python und die Sache mit den PEPs ... 26Python, ein erstes »Hallo Welt« ... 27Fingerübungen mit »print« ... 31Hallo Welt in (einzeiligen) Variationen ... 32Wir müssen reden: Du und deine Variablen ... 35Variablen -- was geht? Und was ist voll krass korrekt? ... 39Die Sache mit den (Daten-)Typen ... 43Diese Datentypen sind für dich da! ... 47Über den richtigen Kamm scheren -- Datentypen konvertieren ... 48Lustiges Konvertieren -- was Python zu was macht ... 51Die Funktion »str()« -- verwandelt alles in Text ... 51Die Funktion »int()« -- ganze Zahlen ... 52Die Funktion »float()« -- Fließkomma mit Punkt ... 53Die Funktion »bool()« -- Wahrheit oder Pflicht ... 53Was ist das denn für ein Typ -- »type()« ... 54Probier's doch mal aus ... 56Und was ist noch wichtig? ... 57Syntax, Variablen, Datentypen und dynamische Typisierung ... 582. Ein Dinkel macht noch keinen Korn -- Syntax, Kommentar und guter Stil ... 59Eingabe, Berechnung und eine Ausgabe ... 61Zahlen mit Komma -- statt mit dem Punkt ... 64Die Zeit der Abrechnung ist gekommen ... 66Damit kannst du rechnen -- die Grundrechenarten ... 67Wie wär's mit einem Rabatt? ... 69Du und deine Kontrollstruktur ... 72»while« -- Schleifen binden leicht gemacht ... 72Ganz wichtig: Die Bedingung der Schleife ... 73Ein schneller Blick auf die Vergleiche ... 74Schleifen binden -- der erste eigene Prototyp ... 76Entrückt -- Einrückungen statt Klammern ... 79Fehlerschau -- nicht alles, was gefällt, ist auch erlaubt ... 82Weiter im (Kassen-)Programm -- jetzt mit Schleife ... 84... es gibt keine blöden Kommentare! ... 87Die »if«-Anweisung -- wenn schon, denn schon ... 88Zeit für Entscheidungen -- dein erstes »if« ... 89Wenn, dann und ansonsten? ... 91Wenn schon, denn schon und auch noch »else« ... ... 92Einfachere Bedingungen! ... 93Kürzeres »else if« mit »elif« ... 94»while« -- The Python-Way mit »break« ... 97Was hast du gelernt? Was haben wir gemacht? ... 983. Arbeitszimmer und Werkbänke -- Funktionen und Rückgabewerte ... 99Funktionen ... 100Der Name der Funktion ... 101Falsche oder richtige Funktionsnamen? ... 102Eigene Funktionen -- der erste Prototyp ... 103Deine Funktion im Programmablauf ... 105Deine erste eigene Funktion ... 106Dynamik dank Parameter? ... 107Zeit zum Ausprobieren! Einmal »lecker Funktion« mit extra Parametern! ... 109Mehr Freiheit dank der Standardwerte ... 110Standardwerte -- Probieren geht über Studieren ... 111Schlüssel-Wert-Paare -- alles richtig zugeordnet ... 113Wie könnte so eine Funktion »spam« aussehen? ... 114Besser als jede Doku -- Docstrings ... 116Weiter mit der Funktion in Kastenform ... 118Funktionen -- die Super-Fehlervermeider ... 120The return of the living values ... 124Der »Wertekorrigierer« -- Steuerung mit »return« ... 126Mehrere Werte mit »return« zurückgeben ... 127Du und deine Funktion -- ein paar Beispiele ... 128Spiel's noch mal Sam -- die Rekursion! ... 129Die dunkle Seite der Funktionen -- »local« und »global« ... 130Lokal vs. global -- was geht? ... 131»global« -- die dunkle Seite der Macht ... 132Große Aufgabe dank Funktionen ganz klein -- Kassenprogramm reloaded ... 133Was hast du gelernt? Was haben wir gemacht? ... 1364. Listen, Tupel, Sets und Dictionaries -- ... alle Daten sind schon da! ... 137Du und deine Liste ... 138Der 1. FC Dinkel und andere Mannschaften ... 141Teile und herrsche -- Teile von Listen ... 143Der neue Star auf dem Feld -- die »for«-Schleife ... 144Wie für »for« gemacht -- »range« ... 145Das Hornberger Elfmeterschießen -- erst mit »for« und dann mit »range« ... 147Index und Wert ausgeben mit »enumerate« ... 149Wenn Besuch kommt -- eine Mannschaft mehr ... 150Die Sache mit den Methoden ... 151Eine ganze Liste anhängen mit »extend« ... 152Einzelne Werte einfügen mit »insert« ... 153Alles wieder andersrum -- mit »reverse« ... 154Geordnet und wohlsortiert, dank »sort« ... 154Sortieren nach Schrödingers Gnaden ... 156Ein Element aus der Liste holen und entfernen -- »pop« ... 158Ja, wo is' er denn -- »index« ... 159Einfach nur löschen -- »remove« ... 159Alle Werte sind schon da -- »count« und »in« ... 160Du, die Liste und deine Vereine ... 162Ziemlich einmalig -- das Set ... 165Tupel -- in Stein gemeißelte Listen ... 167Moment mal, wie war das mit »immutable«? ... 169Du und deine Tore -- gut gespeichert im Dictionary ... 170Werte auslesen mit »get« ... 171Zeigt her eure Werte -- alle Werte eines Dictionarys ausgeben ... 172Was hast du gelernt? Was haben wir gemacht? ... 1745. Text, Strings und Abenteurer -- Texte verändern und bearbeiten ... 175Hilfreich wie eine Machete im Dschungel -- der Backslash »« ... 178Texte zusammenfügen ... 180Übung macht den Meister ... 182Die erste Aufgabe -- Umbenennen von Dateinamen ... 183Die richtige Ausrüstung für den Textdschungel -- hilfreiche Methoden ... 186Alle Funktionalitäten in einer Funktion ... 188Strings schöner ausgeben -- mehr als nur Kosmetik ... 191Variable im Text -- praktisch und einfach mit »{}« ... 194Der Vollständigkeit halber -- formatiert mit »%« ... 196Alle Wörter großgeschrieben -- »title« ... 197Wie oft ist das noch da -- »count« ... 197Wo ist der Schatz -- suchen mit »find« und »rfind« ... 198So machst du aus Listen Texte -- »join« ... 199Ist das eigentlich 'ne Zahl -- »isnumeric« ... 200Buchstaben und Zahlen -- »isalnum« ... 201Sind da nur Buchstaben -- »isalpha« ... 201Von der grauen Theorie zum praktischen Nutzen ... 202Method Chaining -- Methoden in Reihe ... 205Was hast du gelernt? Was haben wir gemacht? ... 2066. Von Käfern und anderen Fehlern -- Nur kein Fehler ist ein guter Fehler ... 207Fehlerbehandlung mit »try« und »except« ... 210Bombensichere Eingaben dank »try« und »except« ... 211Kenne deine Gegner -- unterschiedlichen Fehlerarten ... 215Fehlerbehandlungen im Eigenbau ... 217Mit deinem Fehler auf du und du ... 218Schönere Fehlerbehandlung mit »else« und »finally« ... 222Fehler geschüttelt, nicht gerührt ... 223Zu guter Letzt -- »finally« ... 225Debuggen (nicht nur) mit Thonny ... 226Du, der Debugger und die Breakpoints ... 228Gezielte Fehlerjagd mit Breakpoints ... 232Was hast du gelernt? Was haben wir gemacht? ... 2347. Die Module spielen verrückt -- Die Standardbibliothek und noch viel mehr ... 235Schnelle Infos dank Docstring und »help« ... 239Ein Modul namens »dateiname« ... 241Modul und trotzdem Programm ... 243Das doppelt gemoppelte Modul für den direkten Test ... 246Mächtig vielseitig -- globale Variablen (nicht nur) in Modulen ... 247Die Methode »dateiname« -- nur noch flexibler ... 250Schrecklich lange Modulnamen -- »as« ... 252Das Modul einer Variablen zuweisen ... 253Module wie du und ich -- Python Standard Library ... 256Was für ein Zufall -- »random« ... 258Wo liegt der Unterschied? ... 259Import mit »from«, »import« und »as« -- gezielt und direkt ... 260Wie viel Zufall steckt in Zufallszahlen? ... 262Mehr als nur ein Import -- zwei Importe ... 263Was hast du gelernt? Was haben wir gemacht? ... 2648. Von Klassen, Objekten und alten Griechen -- Objektorientierte Programmierung ... 265Die gute, alte Softwarekrise ... 266Retter gesucht? Retter gefunden: OOP! ... 266Ganz konkret -- die Sache mit Klassen und Objekten ... 269Von der ersten Klasse zum ersten Objekt ... 270Alles auf Anfang -- die Methode »__init__« ... 271Dein erstes Attribut ... 272Es gibt auch ganz schnöde Variablen ... 274Mehr Infos dank Docstring ... 275Das Orakel von Delphi ... 277Die erste Klasse am Stück -- gleich mal etwas reloaded ... 280Das erste eigene Objekt ... 281Orakel reloaded -- das Attribut ändern ... 285Vorsicht beim Zugriff auf Attribute! ... 286Die Sache mit den Parametern ... 288Vertrauen ist gut, Kontrolle besser ... 289Übergebene Werte sind gefährlich! ... 290Das ist die Stunde der Methode »property«! ... 291Besser als nur Setter und Getter ... 293»property« und Orakel -- das passt! ... 297... der durchaus seltsame klingende, aber ziemlich coole »@property«-Dekorator ... 300»private« und »protected« -- aber gar nicht so ganz ... 302Wiederverwendbarkeit und Vererbung ... 306Besser als recyceln -- neue Klasse aus alter Klasse ... 308Super Sache dieses »super« ... 311Statische Attribute und Methoden ... 313Was hast du gelernt? Was haben wir gemacht? ... 3179. Höchste Zeit für Datum, Zeit und Zeitangaben -- Schrödingers Zeitmaschine ... 319Du und deine Zeitmaschine ... 320Welcher Tag ist heute? Welches Jahr!? -- »date« ... 320Bastel mal ein schickes Datum ... 322Tag, Monat, Jahr mit Platzhaltern in Form bringen ... 323Einmal Datum, geschüttelt -- nicht gerührt ... 325Es wird Zeit, die Zeit zu ändern ... ... 327Was von der ganzen Zeit noch übrig bleibt ... 329Stunden, Minuten und Sekunden mit »time« ... 331Ist noch Zeit für einen Dinkelkaffee? ... 333Es ist an der Zeit, die Zeit zu formatieren! ... 335Gestatten, »datetime«, aus dem Hause »datetime« ... 338Besser als jedes Orakel -- Zeit lesen mit »strptime« ... 339Datum und Zeit finden -- so ganz in der Praxis ... 341Ganz großes Kino -- Unixtime und The Epoch ... 343Wann war die letzte Änderung? ... 345Noch ein Wort zu »timedelta« -- rechne mit der Zeit ... 347... rette Weihnachten mit »timedelta« ... 348Was hast du gelernt? Was haben wir gemacht? ... 35010. Vom wichtigen Umgang mit Daten, Dateien und Ordnern -- Endlich in Stein gemeißelt ... 351Wohin mit all den Daten? ... 352Das Regal auf der Gurke ... 353Zeit zum Lesen ... 355Zeit für ein bisschen Serialisierung ... 356Du und dein Regal -- ein paar hilfreiche Informationen ... 357Mit Netz und doppeltem Boden ... 358Du und deine Textdatei -- schreiben und lesen ... 360Und es geht noch kürzer -- mit »with«! ... 362Du und deine Textdatei ... 363Listen und Zeilenumbrüche schreiben ... 365Zeilenweises Lesen ... 367Im Dschungel der Ordner und Dateien ... 368Halt mal die Machete -- Überleben im Ordnerdschungel ... 372Kopieren oder nicht kopieren, das ist hier die Frage ... 375Eindeutige Hash-Werte für Vergleiche ... 377Und nicht vergessen: Verschieben und Löschen ... 379Was hast du gelernt? Was haben wir gemacht? ... 38011. Zufallszahlen, Matrizen und Arrays -- Ein klein bisschen Mathematik, die du wirklich gebrauchen kannst ... 381Du, die Zufallszahlen und NumPy ... 383Auf dem Weg zum Millionär -- ein Lottoprogramm ... 386Andere Verteilungen bei den Zufallszahlen ... 388Ganz normalverteilte Werte ... ... 391Die Sache mit den Arrays ... 393Ein paar schnelle Berechnungen ... 395Bau mal ein Array ... 398Weniger selbst arbeiten -- Arrays mit »arange« ... 399Die Sache mit den mehrdimensionalen Arrays ... 400Bastelarbeiten mit Arrays ... 402Rechnen mit Arrays ... 404Was hast du gelernt? Was haben wir gemacht? ... 40612. Grafische Oberflächen -- Buttons, GUI und Layout-Manager ... 407Der Layout-Manager »pack« und die Sache mit den Frames ... 411Mit deinem Fenster auf du und du ... 414Ein bisschen Kosmetik mit schöneren Elementen ... 419Die Sache mit dem Lambda -- nicht nur für GUIs ... 421Button mit Parametern -- ganz einfach dank Lambda ... 423Rechnen mit dem Schrödinator und die Sache mit den »tkinter«-Variablen ... 427Ganz kurz noch schönere Schriften ... 429Ereignisse im objektorientieren Fenster ... 430Das Schrödinger-Zeichenprogramm ... 438Was hast du gelernt? Was haben wir gemacht? ... 44013. Von Daten, Datenbanken und SQL -- Das relationale Datenbankmodell ... 441Retter und Held gesucht: Datenbankprofi ... 443Daten braucht das Land! ... 451Keine doppelten Sachen -- die Sache mit dem Primärschlüssel ... 454Stopp die Viren und Trojaner! ... 456»fetchall«, »fetchmany«, »fetchone« -- alle, viele, einer ... 462Finde die richtige Abwehrstrategie! ... 465Die Sache mit dem WHERE ... 467Schönere Datenbankverbindung mit »with« ... 470Weiter im Programm mit der kontrollierten Eingabe ... 471Eine Funktion, alles zu speichern ... ... 473Zeit, die Viren zu stoppen -- die Auswertung der Daten ... 475Höchste Zeit für schnelle Auswertungen ... 479Finale -- Ändern mit UPDATE ... 486Die Sache mit den Normalformen ... 491Mehr Leistung mit dem Index ... 496Was hast du gelernt? Was haben wir gemacht? ... 49814. Hast du mal einen Chart für mich? -- Zahlen und Daten im Überfluss ... 499Drei Kurven sollt ihr sein ... 505Zeit für die erste Auswertung ... 507Nicht nur für Charts: Schlaue Listen mit List Comprehension ... 509Kleine, schlaue Listen selbst gemacht ... 512Da geht noch was -- noch ein »if« und auch ein »else« ... 518Sahne, Frucht und Dinkel -- was ist am beliebtesten? ... 520Mehr als nur ein Fenster -- die Sache mit den »subplots« ... 523Noch mehr Torten -- das Kuchendiagramm ... 526Du und deine Normalverteilung -- von ziemlich eindimensional bis schick in 3D ... 529Was hast du gelernt? Was haben wir gemacht? ... 53215. Daten, Statistik, Data Science und künstliche Intelligenz -- Wenn der eigene Kopf schon raucht ... 533Richtige Ergebnisse -- mal ganz ohne Formel ... 537Und jetzt alles mit echter KI ... 540(Trainings-)Daten braucht das Land ... 541Nicht für die Schule lernt die KI ... 541Zeit, das Orakel zu befragen ... 542Die zweite Zahlenreihe ... 543Zeit für noch mehr Lernen lassen ... 544Virenerkennung mit dem Rando