Elter | Schrödinger programmiert Python | Buch | 978-3-8362-6745-8 | sack.de

Buch, Deutsch, 667 Seiten, Format (B × H): 202 mm x 235 mm, Gewicht: 1610 g

Reihe: Rheinwerk computing

Elter

Schrödinger programmiert Python

Das etwas andere Fachbuch. Durchstarten mit Python!

Buch, Deutsch, 667 Seiten, Format (B × H): 202 mm x 235 mm, Gewicht: 1610 g

Reihe: Rheinwerk computing

ISBN: 978-3-8362-6745-8
Verlag: Rheinwerk Verlag GmbH


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.

Aus dem Inhalt:

- Installationshilfe und gründlicher Einstieg

- Objektorientierung aus der Profi-Praxis

- Das "Zen of Python"

- Umgang mit Zeit und Datum

- Module

- Alles rund um Datenbanken

- Keine Angst vor regulären Ausdrücken

- Einblicke in Künstliche Intelligenz

- Unmengen an Beispielcode und Übungen
Elter Schrödinger programmiert Python jetzt bestellen!

Autoren/Hrsg.


Weitere Infos & Material


Schrödingers Büro. 4

  Schrödingers Werkstatt. 6

  Schrödingers Wohnzimmer. 8

  Impressum. 10

  Inhaltsverzeichnis. 12

  Vorwort. 22

  1.  Schrödinger startet durch -- mit Python! -- Python, erste schnelle Schritte. 23

       Die Programmiersprache Python!. 25

       Das Zen of Python und die Sache mit den PEPs. 26

       Python, ein erstes 'Hallo Welt'. 27

       Fingerübungen mit 'print'. 31

       Hallo Welt in (einzeiligen) Variationen. 32

       Wir müssen reden: Du und deine Variablen. 35

       Variablen -- was geht? Und was ist voll krass korrekt?. 39

       Die Sache mit den (Daten-)Typen. 43

       Diese Datentypen sind für dich da!. 47

       Über den richtigen Kamm scheren -- Datentypen konvertieren. 48

       Lustiges Konvertieren -- was Python zu was macht. 51

       Die Funktion 'str()' -- verwandelt alles in Text. 51

       Die Funktion 'int()' -- ganze Zahlen. 52

       Die Funktion 'float()' -- Fließkomma mit Punkt. 53

       Die Funktion 'bool()' -- Wahrheit oder Pflicht. 53

       Was ist das denn für ein Typ -- 'type()'. 54

       Probier's doch mal aus. 56

       Und was ist noch wichtig?. 57

       Syntax, Variablen, Datentypen und dynamische Typisierung. 58

  2.  Ein Dinkel macht noch keinen Korn -- Syntax, Kommentar und guter Stil. 59

       Eingabe, Berechnung und eine Ausgabe. 61

       Zahlen mit Komma -- statt mit dem Punkt. 64

       Die Zeit der Abrechnung ist gekommen. 66

       Damit kannst du rechnen -- die Grundrechenarten. 67

       Wie wär's mit einem Rabatt?. 69

       Du und deine Kontrollstruktur. 72

       'while' -- Schleifen binden leicht gemacht. 72

       Ganz wichtig: Die Bedingung der Schleife. 73

       Ein schneller Blick auf die Vergleiche. 74

       Schleifen binden -- der erste eigene Prototyp. 76

       Entrückt -- Einrückungen statt Klammern. 79

       Fehlerschau -- nicht alles, was gefällt, ist auch erlaubt. 82

       Weiter im (Kassen-)Programm -- jetzt mit Schleife. 84

       . es gibt keine blöden Kommentare!. 87

       Die 'if'-Anweisung -- wenn schon, denn schon. 88

       Zeit für Entscheidungen -- dein erstes 'if'. 89

       Wenn, dann und ansonsten?. 91

       Wenn schon, denn schon und auch noch 'else'. 92

       Einfachere Bedingungen!. 93

       Kürzeres 'else if' mit 'elif'. 94

       'while' -- The Python-Way mit 'break'. 97

       Was hast du gelernt? Was haben wir gemacht?. 98

  3.  Arbeitszimmer und Werkbänke -- Funktionen und Rückgabewerte. 99

       Funktionen. 100

       Der Name der Funktion. 101

       Falsche oder richtige Funktionsnamen?. 102

       Eigene Funktionen -- der erste Prototyp. 103

       Deine Funktion im Programmablauf. 105

       Deine erste eigene Funktion. 106

       Dynamik dank Parameter?. 107

       Zeit zum Ausprobieren! Einmal 'lecker Funktion' mit extra Parametern!. 109

       Mehr Freiheit dank der Standardwerte. 110

       Standardwerte -- Probieren geht über Studieren. 111

       Schlüssel-Wert-Paare -- alles richtig zugeordnet. 113

       Wie könnte so eine Funktion 'spam' aussehen?. 114

       Besser als jede Doku -- Docstrings. 116

       Weiter mit der Funktion in Kastenform. 118

       Funktionen -- die Super-Fehlervermeider. 120

       The return of the living values. 124

       Der 'Wertekorrigierer' -- Steuerung mit 'return'. 126

       Mehrere Werte mit 'return' zurückgeben. 127

       Du und deine Funktion -- ein paar Beispiele. 128

       Spiel's noch mal Sam -- die Rekursion!. 129

       Die dunkle Seite der Funktionen -- 'local' und 'global'. 130

       Lokal vs. global -- was geht?. 131

       'global' -- die dunkle Seite der Macht. 132

       Große Aufgabe dank Funktionen ganz klein -- Kassenprogramm reloaded. 133

       Was hast du gelernt? Was haben wir gemacht?. 136

  4.  Listen, Tupel, Sets und Dictionaries --. alle Daten sind schon da!. 137

       Du und deine Liste. 138

       Der 1. FC Dinkel und andere Mannschaften. 141

       Teile und herrsche -- Teile von Listen. 143

       Der neue Star auf dem Feld -- die 'for'-Schleife. 144

       Wie für 'for' gemacht -- 'range'. 145

       Das Hornberger Elfmeterschießen -- erst mit 'for' und dann mit 'range'. 147

       Index und Wert ausgeben mit 'enumerate'. 149

       Wenn Besuch kommt -- eine Mannschaft mehr. 150

       Die Sache mit den Methoden. 151

       Eine ganze Liste anhängen mit 'extend'. 152

       Einzelne Werte einfügen mit 'insert'. 153

       Alles wieder andersrum -- mit 'reverse'. 154

       Geordnet und wohlsortiert, dank 'sort'. 154

       Sortieren nach Schrödingers Gnaden. 156

       Ein Element aus der Liste holen und entfernen -- 'pop'. 158

       Ja, wo is' er denn -- 'index'. 159

       Einfach nur löschen -- 'remove'. 159

       Alle Werte sind schon da -- 'count' und 'in'. 160

       Du, die Liste und deine Vereine. 162

       Ziemlich einmalig -- das Set. 165

       Tupel -- in Stein gemeißelte Listen. 167

       Moment mal, wie war das mit 'immutable'?. 169

       Du und deine Tore -- gut gespeichert im Dictionary. 170

       Werte auslesen mit 'get'. 171

       Zeigt her eure Werte -- alle Werte eines Dictionarys ausgeben. 172

       Was hast du gelernt? Was haben wir gemacht?. 174

  5.  Text, Strings und Abenteurer -- Texte verändern und bearbeiten. 175

       Hilfreich wie eine Machete im Dschungel -- der Backslash ''. 178

       Texte zusammenfügen. 180

       Übung macht den Meister. 182

       Die erste Aufgabe -- Umbenennen von Dateinamen. 183

       Die richtige Ausrüstung für den Textdschungel -- hilfreiche Methoden. 186

       Alle Funktionalitäten in einer Funktion. 188

       Strings schöner ausgeben -- mehr als nur Kosmetik. 191

       Variable im Text -- praktisch und einfach mit '{}'. 194

       Der Vollständigkeit halber -- formatiert mit '%'. 196

       Alle Wörter großgeschrieben -- 'title'. 197

       Wie oft ist das noch da -- 'count'. 197

       Wo ist der Schatz -- suchen mit 'find' und 'rfind'. 198

       So machst du aus Listen Texte -- 'join'. 199

       Ist das eigentlich 'ne Zahl -- 'isnumeric'. 200

       Buchstaben und Zahlen -- 'isalnum'. 201

       Sind da nur Buchstaben -- 'isalpha'. 201

       Von der grauen Theorie zum praktischen Nutzen. 202

       Method Chaining -- Methoden in Reihe. 205

       Was hast du gelernt? Was haben wir gemacht?. 206

  6.  Von Käfern und anderen Fehlern -- Nur kein Fehler ist ein guter Fehler. 207

       Fehlerbehandlung mit 'try' und 'except'. 210

       Bombensichere Eingaben dank 'try' und 'except'. 211

       Kenne deine Gegner -- unterschiedlichen Fehlerarten. 215

       Fehlerbehandlungen im Eigenbau. 217

       Mit deinem Fehler auf du und du. 218

       Schönere Fehlerbehandlung mit 'else' und 'finally'. 222

       Fehler geschüttelt, nicht gerührt. 223

       Zu guter Letzt -- 'finally'. 225

       Debuggen (nicht nur) mit Thonny. 226

       Du, der Debugger und die Breakpoints. 228

       Gezielte Fehlerjagd mit Breakpoints. 232

       Was hast du gelernt? Was haben wir gemacht?. 234

  7.  Die Module spielen verrückt -- Die Standardbibliothek und noch viel mehr. 235

       Schnelle Infos dank Docstring und 'help'. 239

       Ein Modul namens 'dateiname'. 241

       Modul und trotzdem Programm. 243

       Das doppelt gemoppelte Modul für den direkten Test. 246

       Mächtig vielseitig -- globale Variablen (nicht nur) in Modulen. 247

       Die Methode 'dateiname' -- nur noch flexibler. 250

       Schrecklich lange Modulnamen -- 'as'. 252

       Das Modul einer Variablen zuweisen. 253

       Module wie du und ich -- Python Standard Library. 256

       Was für ein Zufall -- 'random'. 258

       Wo liegt der Unterschied?. 259

       Import mit 'from', 'import' und 'as' -- gezielt und direkt. 260

       Wie viel Zufall steckt in Zufallszahlen?. 262

       Mehr als nur ein Import -- zwei Importe. 263

       Was hast du gelernt? Was haben wir gemacht?. 264

  8.  Von Klassen, Objekten und alten Griechen -- Objektorientierte Programmierung. 265

       Die gute, alte Softwarekrise. 266

       Retter gesucht? Retter gefunden: OOP!. 266

       Ganz konkret -- die Sache mit Klassen und Objekten. 269

       Von der ersten Klasse zum ersten Objekt. 270

       Alles auf Anfang -- die Methode '__init__'. 271

       Dein erstes Attribut. 272

       Es gibt auch ganz schnöde Variablen. 274

       Mehr Infos dank Docstring. 275

       Das Orakel von Delphi. 277

       Die erste Klasse am Stück -- gleich mal etwas reloaded. 280

       Das erste eigene Objekt. 281

       Orakel reloaded -- das Attribut ändern. 285

       Vorsicht beim Zugriff auf Attribute!. 286

       Die Sache mit den Parametern. 288

       Vertrauen ist gut, Kontrolle besser. 289

       Übergebene Werte sind gefährlich!. 290

       Das ist die Stunde der Methode 'property'!. 291

       Besser 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. 302

       Wiederverwendbarkeit und Vererbung. 306

       Besser als recyceln -- neue Klasse aus alter Klasse. 308

       Super Sache dieses 'super'. 311

       Statische Attribute und Methoden. 313

       Was hast du gelernt? Was haben wir gemacht?. 317

  9.  Höchste Zeit für Datum, Zeit und Zeitangaben -- Schrödingers Zeitmaschine. 319

       Du und deine Zeitmaschine. 320

       Welcher Tag ist heute? Welches Jahr!? -- 'date'. 320

       Bastel mal ein schickes Datum. 322

       Tag, Monat, Jahr mit Platzhaltern in Form bringen. 323

       Einmal Datum, geschüttelt -- nicht gerührt. 325

       Es wird Zeit, die Zeit zu ändern. 327

       Was von der ganzen Zeit noch übrig bleibt. 329

       Stunden, Minuten und Sekunden mit 'time'. 331

       Ist noch Zeit für einen Dinkelkaffee?. 333

       Es ist an der Zeit, die Zeit zu formatieren!. 335

       Gestatten, 'datetime', aus dem Hause 'datetime'. 338

       Besser als jedes Orakel -- Zeit lesen mit 'strptime'. 339

       Datum und Zeit finden -- so ganz in der Praxis. 341

       Ganz großes Kino -- Unixtime und The Epoch. 343

       Wann war die letzte Änderung?. 345

       Noch ein Wort zu 'timedelta' -- rechne mit der Zeit. 347

       . rette Weihnachten mit 'timedelta'. 348

       Was hast du gelernt? Was haben wir gemacht?. 350

10.  Vom wichtigen Umgang mit Daten, Dateien und Ordnern -- Endlich in Stein gemeißelt. 351

       Wohin mit all den Daten?. 352

       Das Regal auf der Gurke. 353

       Zeit zum Lesen. 355

       Zeit für ein bisschen Serialisierung. 356

       Du und dein Regal -- ein paar hilfreiche Informationen. 357

       Mit Netz und doppeltem Boden. 358

       Du und deine Textdatei -- schreiben und lesen. 360

       Und es geht noch kürzer -- mit 'with'!. 362

       Du und deine Textdatei. 363

       Listen und Zeilenumbrüche schreiben. 365

       Zeilenweises Lesen. 367

       Im Dschungel der Ordner und Dateien. 368

       Halt mal die Machete -- Überleben im Ordnerdschungel. 372

       Kopieren oder nicht kopieren, das ist hier die Frage. 375

       Eindeutige Hash-Werte für Vergleiche. 377

       Und nicht vergessen: Verschieben und Löschen. 379

       Was hast du gelernt? Was haben wir gemacht?. 380

11.  Zufallszahlen, Matrizen und Arrays -- Ein klein bisschen Mathematik, die du wirklich gebrauchen kannst. 381

       Du, die Zufallszahlen und NumPy. 383

       Auf dem Weg zum Millionär -- ein Lottoprogramm. 386

       Andere Verteilungen bei den Zufallszahlen. 388

       Ganz normalverteilte Werte. 391

       Die Sache mit den Arrays. 393

       Ein paar schnelle Berechnungen. 395

       Bau mal ein Array. 398

       Weniger selbst arbeiten -- Arrays mit 'arange'. 399

       Die Sache mit den mehrdimensionalen Arrays. 400

       Bastelarbeiten mit Arrays. 402

       Rechnen mit Arrays. 404

       Was hast du gelernt? Was haben wir gemacht?. 406

12.  Grafische Oberflächen -- Buttons, GUI und Layout-Manager. 407

       Der Layout-Manager 'pack' und die Sache mit den Frames. 411

       Mit deinem Fenster auf du und du. 414

       Ein bisschen Kosmetik mit schöneren Elementen. 419

       Die Sache mit dem Lambda -- nicht nur für GUIs. 421

       Button mit Parametern -- ganz einfach dank Lambda. 423

       Rechnen mit dem Schrödinator und die Sache mit den 'tkinter'-Variablen. 427

       Ganz kurz noch schönere Schriften. 429

       Ereignisse im objektorientieren Fenster. 430

       Das Schrödinger-Zeichenprogramm. 438

       Was hast du gelernt? Was haben wir gemacht?. 440

13.  Von Daten, Datenbanken und SQL -- Das relationale Datenbankmodell. 441

       Retter und Held gesucht: Datenbankprofi. 443

       Daten braucht das Land!. 451

       Keine doppelten Sachen -- die Sache mit dem Primärschlüssel. 454

       Stopp die Viren und Trojaner!. 456

       'fetchall', 'fetchmany', 'fetchone' -- alle, viele, einer. 462

       Finde die richtige Abwehrstrategie!. 465

       Die Sache mit dem WHERE. 467

       Schönere Datenbankverbindung mit 'with'. 470

       Weiter im Programm mit der kontrollierten Eingabe. 471

       Eine Funktion, alles zu speichern. 473

       Zeit, die Viren zu stoppen -- die Auswertung der Daten. 475

       Höchste Zeit für schnelle Auswertungen. 479

       Finale -- Ändern mit UPDATE. 486

       Die Sache mit den Normalformen. 491

       Mehr Leistung mit dem Index. 496

       Was hast du gelernt? Was haben wir gemacht?. 498

14.  Hast du mal einen Chart für mich? -- Zahlen und Daten im Überfluss. 499

       Drei Kurven sollt ihr sein. 505

       Zeit für die erste Auswertung. 507

       Nicht nur für Charts: Schlaue Listen mit List Comprehension. 509

       Kleine, schlaue Listen selbst gemacht. 512

       Da geht noch was -- noch ein 'if' und auch ein 'else'. 518

       Sahne, Frucht und Dinkel -- was ist am beliebtesten?. 520

       Mehr als nur ein Fenster -- die Sache mit den 'subplots'. 523

       Noch mehr Torten -- das Kuchendiagramm. 526

       Du und deine Normalverteilung -- von ziemlich eindimensional bis schick in 3D. 529

       Was hast du gelernt? Was haben wir gemacht?. 532

15.  Daten, Statistik, Data Science und künstliche Intelligenz -- Wenn der eigene Kopf schon raucht. 533

       Richtige Ergebnisse -- mal ganz ohne Formel. 537

       Und jetzt alles mit echter KI. 540

       (Trainings-)Daten braucht das Land. 541

       Nicht für die Schule lernt die KI. 541

       Zeit, das Orakel zu befragen. 542

       Die zweite Zahlenreihe. 543

       Zeit für noch mehr Lernen lassen. 544

       Virenerkennung mit dem RandomForestClassifier. 547

       Daten polieren -- mit der richtigen Strategie!. 550

       Mittelwert und Median als Strategie. 554

       Was hast du gelernt? Was haben wir gemacht?. 556

16.  Datenaustausch mit CSV und JSON -- Daten schreiben -- Daten lesen. 557

       Ein paar Einstellungen und der richtige Dialekt. 563

       Da geht auch was mit Dictionaries. 565

       Zeit zu lesen. 567

       Die Sache mit JSON. 570

       Einmal JSON und zurück. 571

       Auch JSON will gelesen sein. 573

       Was hast du gelernt? Was haben wir gemacht?. 574

17.  Reguläre Ausdrücke -- Das Schweizer Messer der Textverarbeitung. 575

       Eine Suche -- ganz klassisch. 577

       Mit regulären Ausdrücken ist das kein Problem!. 580

       Nur mal kurz: Ein paar Flaggen. 585

       Eine Funktion zur passgenauen Wortsuche. 587

       Vordefinierte Zeichenklassen, ein Punkt und viele Beispiele. 591

       Ein Beispiel -- die Suche nach Datum und Zeit. 594

       Besser als jedes Orakel -- das Matchobjekt auslesen. 596

       Finde die Kennung -- probieren geht über studieren. 597

       Selber basteln -- eigene Zeichenklassen. 600

       Schöneres Datum dank eigener Zeichenklassen. 603

       Quantifier -- wie oft oder vielleicht auch gar nicht?. 606

       Mehr als ein Treffer -- 'findall' und 'finditer'. 609

       Mach mal was mit Quantifiern. 610

       Ganz kurz: Quantifier mit '?', '*' und '+'. 613

       Ein (fast) gültiges Kennwort. 614

       Ein Anfang, ein Ende und ein paar Empfehlungen. 616

       Suchgruppen -- mehr als nur ein Zeichen. 619

       Die Sache mit 'compile'. 621

       Was hast du gelernt? Was haben wir gemacht?. 622

Anhang.  Die verlorenen Kapitel. 623

       A. Installation von Python unter Windows -- Ein neues Zuhause für Python. 625

       B. Die Python-Shell -- Schnell mal machen, und das voll interaktiv. 631

       C. PEP 20 --The Zen of Python. 639

       D. Die All-in-one-Entwicklungsumgebung -- Wundertüte Thonny. 643

       E. DB Browser for SQLite -- Datenbanken leicht gemacht. 653

  Index. 663


Ihre Fragen, Wünsche oder Anmerkungen
Vorname*
Nachname*
Ihre E-Mail-Adresse*
Kundennr.
Ihre Nachricht*
Lediglich mit * gekennzeichnete Felder sind Pflichtfelder.
Wenn Sie die im Kontaktformular eingegebenen Daten durch Klick auf den nachfolgenden Button übersenden, erklären Sie sich damit einverstanden, dass wir Ihr Angaben für die Beantwortung Ihrer Anfrage verwenden. Selbstverständlich werden Ihre Daten vertraulich behandelt und nicht an Dritte weitergegeben. Sie können der Verwendung Ihrer Daten jederzeit widersprechen. Das Datenhandling bei Sack Fachmedien erklären wir Ihnen in unserer Datenschutzerklärung.