Python Alles-in-einem-Band für Dummies (...für Dummies) (1. Auflage. 2025. 800 S. 240 mm)

個数:
  • 予約

Python Alles-in-einem-Band für Dummies (...für Dummies) (1. Auflage. 2025. 800 S. 240 mm)

  • 現在予約受付中です。出版後の入荷・発送となります。
    重要:表示されている発売日は予定となり、発売が延期、中止、生産限定品で商品確保ができないなどの理由により、ご注文をお取消しさせていただく場合がございます。予めご了承ください。

    ●3Dセキュア導入とクレジットカードによるお支払いについて
  • 【入荷遅延について】
    世界情勢の影響により、海外からお取り寄せとなる洋書・洋古書の入荷が、表示している標準的な納期よりも遅延する場合がございます。
    おそれいりますが、あらかじめご了承くださいますようお願い申し上げます。
  • ◆画像の表紙や帯等は実物とは異なる場合があります。
  • ◆ウェブストアでの洋書販売価格は、弊社店舗等での販売価格とは異なります。
    また、洋書販売価格は、ご注文確定時点での日本円価格となります。
    ご注文確定後に、同じ洋書の販売価格が変動しても、それは反映されません。
  • 製本 Paperback:紙装版/ペーパーバック版/ページ数 800 p.
  • 言語 GER
  • 商品コード 9783527718498

Full Description

Python entdecken - Das Abenteuer beginnt hier!

Aus dem Dschungel der Programmiersprachen sticht Python durch seine elegante und schlichte Syntax hervor. Lernen Sie sie in einem Crashkurs kennen und erfahren Sie, wie man Programme mit Funktionen, Objekten und Modulen strukturiert. Es erwarten Sie jede Menge Tipps und Tricks zur Datenverarbeitung, Ablaufsteuerung und Fehlerbehandlung. Sie erfahren, wie man Programme testet, entwickeln ein Nachrichtenprotokoll fürs Netzwerk und probieren die visuelle Datenanalyse aus. Erstellen Sie Programme mit GUI und durchforsten Sie das Netz nach interessanten Daten. Starten Sie jetzt ins Abenteuer!

Sie erfahren

Wie Sie mit Python interessante Probleme lösen
Wie Sie Programme mit Funktionen, Klassen und Modulen strukturieren
Wie Sie das Internet nach Daten durchforsten und Webseiten mit Django erstellen

Contents

Inhaltsverzeichnis

Über den Autor 27

Danksagung 29

Einleitung 31

Törichte Annahmen über die Leser 31

Wie Sie dieses Buch nutzen können 32

Was Sie nicht lesen müssen 32

Wie dieses Buch aufgebaut ist 32

Symbole, die in diesem Buch verwendet werden 34

Konventionen in diesem Buch 35

TEIL I

Willkommen in Python-City 37

Kapitel 1

Python - eine Hochglanzbroschüre 39

Was Python so interessant macht 40

Dunkle Flecken - was an Python manchmal nicht so schön ist 41

Infrastruktur und Dienstleistungen 42

Haushalt und Wirtschaft 43

Politische Entscheidungsprozesse 44

Philosophie 44

Willkommen 45

Kapitel 2

Der Einzug in die neue Wohnung 47

Was wird installiert? 47

Windows 48

1 Installer herunterladen 48

2 Features auswählen 49

3 Anpassungen vornehmen 50

4 Installieren 50

5 Installation prüfen 51

macOS 52

1 Installer herunterladen 52

2 Installer ausführen 52

3 Ziel auswählen 52

4 Installation anpassen 52

4 Abwarten und Tee trinken 53

5 Installation testen 53

12 Inhaltsverzeichnis

Linux 54

Ubuntu 54

Fedora 55

Einer für alle 56

Windows 56

Linux56

macOS 57

Kapitel 3

Die Nachbarschaft kennenlernen 59

Die Kommandozeile starten 59

Windows 60

macOS 60

Linux60

Auf der Kommandozeile 61

Wo bin ich?62

Befehle für die Kommandozeile 63

Code ausprobieren 65

Die Wahl des Editors 66

Programme ausführen 67

Kapitel 4

Exposition auf dem Stadtfest - ein erster Blick in den Code 69

Ausführung 71

Vogelperspektive 72

Ein Docstring 74

Eine Zahl ausdenken 75

Eine erste Runde drehen 75

Raten 76

Hast du einen Tipp? 79

Weiter geht's! 80

Kapitel 5

Syntax - die lokale Mundart 81

Verschiedene Ausdrucksformen 81

Zeilen 82

Schlüsselwörter, Anweisungen und Ausdrücke 84

Zusammengesetzte Anweisungen 86

Einrückung 87

Variablen 89

Namensfindung 90

Literale 91

Objekte 93

Inhaltsverzeichnis 13

TEIL II

Alles unter Kontrolle 95

Kapitel 6

Mit Wenn und Aber - Bedingungen stellen 97

Verzweigungen im Programmablauf97

If-Anweisungen 98

If-Ausdrücke100

Musterabgleiche101

Kapitel 7

Anweisungen wiederholen mit Schleifen 105

Wiederholungen mit while 105

Break and Continue 107

For-Schleifen 109

Kapitel 8

Der eingebaute Taschenrechner - ein bisschen Mathe 113

Zahlen 113

Exkurs: Zahlensysteme114

Binärzahlen 115

Hexadezimalzahlen 116

Konvertieren 117

Große Zahlen 117

Kommazahlen 118

Festkommazahlen 119

Brüche 120

Rechnen 120

Operatorrangfolge 123

Funktionen für mathematische Probleme 123

Kapitel 9

Wahrheit oder Pflicht - logische Ausdrücke formulieren 125

Wahrheitswerte 125

Truthy-Falsy 126

Vergleichsoperatoren 128

Verneinung 129

Logische Operatoren 130

AND - logisches Und 130

OR - logisches Oder 131

XOR - logisches Entweder-Oder132

Logische Gesetze 134

Distributivgesetz 135

De-Morgansche Gesetze137

Tipps139

14 Inhaltsverzeichnis

Kapitel 10

Verpackungstechnik - eingebaute Container-Datentypen 141

Listen 141

Listen aufbauen und bearbeiten 142

Metadaten abfragen 144

Sortieren 146

Einzelne Elemente abfragen 146

Listen zerschnippeln - Slicing 147

Tupel 149

Einpacken - Auspacken 151

Benannte Tupel 153

Dictionarys154

Dictionarys iterieren 155

Schlüsseldienst 156

Sets157

Einmalige Elemente 157

Teilmengen159

Schnittmenge 160

Vereinigungsmenge 161

Differenzmenge 163

Symmetrische Differenz 163

Zusammenfassung 164

Weitere Datentypen 164

Frozensets 165

Bytes und Byte-Array 165

Arrays, Structs165

 und viele andere mehr166

Kapitel 11

Comprehensions - selbstverständliche Listen 167

List-Comprehensions 168

Iteration 169

Projektion 169

Selektion 170

Set-Comprehensions 171

Dict-Comprehensions 171

Generatoren statt Tupel-Comprehensions 172

Beispiel: Ein Balkendiagramm173

Schleife oder Comprehension?176

Sonderfälle177

"ftoc-new_PrintPDF" — 2025/4/23 — 1:53 — page 15 — #5

Inhaltsverzeichnis 15

TEIL III

Buchstabensuppe 179

Kapitel 12

Strings - Python als Schreibmaschine 181

Auf einen Blick 182

Syntax 183

String-Objekte 183

Mehrzeilige Strings 183

Gemischte Anführungszeichen184

Ausbruch mit Escape-Zeichen 185

Texte einlesen 185

Texte ausgeben 186

Steuerzeichen 188

str - Objekte in Strings konvertieren190

Variablen im Text formatieren190

Interpolation mit f-Strings 191

Früher war %(alle)s anders 192

Explizites Formatieren 193

Minisprache zur Formatierung193

Zahlen anders darstellen193

Zahlen runden 194

Werte ausrichten und auffüllen 194

Datumsangaben formatieren 195

Wichtige Methoden 196

Kapitel 13

Mit regulären Ausdrücken Buchstaben aus der Suppe

fischen199

Textmuster beschreiben 200

Gebräuchliche Zeichenklassen204

Gebräuchliche Methoden 206

Vorne suchen - rematch207

Auch weiter hinten suchen - research 208

Alle Vorkommen ausfindig machen - refindall 208

Vorkommen mit Metadaten - refinditer 208

Vorkommen ersetzen mit resub 209

Strings zerteilen mit resplit 209

Beispiel: Nach Vereinbarung 209

Reguläre Ausdrücke in der Praxis 217

Fallstrick: Gierige Ausdrücke 219

Nützliche Rezepte 220

Einen Text nach Zahlen durchsuchen 220

Überflüssige Leerzeichen in einem Text zusammenfalten 220

Alle Schreibweisen von »Mayer« finden 221

Einen Text in Wörter zerlegen 221

Auskommentierte Zeilen in einem Python-Programm ausgeben 221

HTML-Farbcodes in einer css-Datei finden 221

16 Inhaltsverzeichnis

Kapitel 14

Surfen im Dateisystem 223

Die Qual der Wahl 223

Das aktuelle Verzeichnis herausfinden 224

Die aktuelle Programmdatei finden 225

Verzeichnisse normalisieren 226

Pfade verbinden und lösen 226

Verzeichnis oder Datei?227

Dateien in einem Verzeichnis auflisten 228

Dateien verschieben und kopieren 230

Kapitel 15

Für Ihre Unterlagen - Dateien lesen und schreiben 231

Textdateien 231

Buchstabenweise lesen 233

Zeilenweise lesen234

Dateien schließen235

Dateimodi 237

Lesen und Schreiben gleichzeitig 239

Binärdateien 242

Bytes-Objekte 243

Byte-Blöcke lesen244

Bytes interpretieren (als PNG) 246

Kapitel 16

Bl\xc3\xb6des Encoding 251

Am Anfang war das ASCII 252

Codepages253

Mit Unicode gegen den Zeichensalat255

UTF-8 257

Unicode-Support in Python 259

Wie encode ich richtig?260

TEIL IV

Objekte und Funktionen263

Kapitel 17

Wie Funktionen funktionieren 265

Built-in Functions 265

Eigene Funktionen 266

Funktionen definieren 267

Im Rumpf 268

Funktionen aufrufen 269

Funktionsobjekte 270

Argumente übergeben 270

Rückgabewerte 272

Namensräume 273

Sichtbarkeit (Scope) von Variablen 275

Inhaltsverzeichnis 17

Jede für sich 277

Parameter279

Argumente prüfen 280

Typ-Fehler vermeiden 282

Optionale Parameter - Default-Argumente 282

Parameterreihenfolge 285

Positionale Übergabe erzwingen 286

Flexible Parameter 28 9

Auspacken beim Aufruf 292

Funktionale Programmierung294

Genau die richtige Menge des Guten296

Funktionen: Keine Bürger zweiter Klasse 297

Funktionen, die Funktionen annehmen 298

Lambdas: Funktionen ohne Namen 300

Funktionen, die Funktionen zurückgeben 303

Rekursion: Funktionen, die sich selbst aufrufen 304

Dekoratoren 306

Kapitel 18

Die Welt verstehen mit Objekten 313

Objektorientierte Programmierung 315

Was sind Objekte?316

Wo kommen die Objekte her? 316

Wo gehen Objekte hin? 318

Was können Objekte so?318

Welche Vorteile haben Objekte? 320

Und die Nachteile? 320

Zusammenfassung 321

Eine Klasse für sich 321

Konstruktoraufruf322

Attribute anlegen 323

Die Ausgabe steuern 324

Auch nur mit Wasser gekocht 325

Vererbung 326

Gleich und Selb 327

Vergleiche 328

Arithmetik 329

Eigene Methoden330

Zusammenfassung 332

Vererbung333

Elternklasse 335

Erben337

Späte Bindung 338

Mixins - misch dich ruhig ein 341

Diskussion 347

18 Inhaltsverzeichnis

Kapitel 19

Exceptions - ausnahmsweise keine Katastrophe349

Exceptions behandeln 352

Try - Versuch macht kluch353

Except - Ausnahmen bestätigen die Regel 353

Else und Finally - zu guter Letzt, zu schlechter Letzt355

Ausnahmen auslösen 355

Eigene Ausnahmen definieren356

Kapitel 20

Daten ohne Ende - Iteratoren und Generatoren365

Das Iterator-Protokoll 366

Generatoren 368

Generator-Ausdrücke 369

Eifrige und verzögerte Auswertung 370

Generator-Funktionen 371

Verschachtelte Generatoren 372

Unendliche Generatoren372

Itertools 374

Generator-Objekte 375

Kapitel 21

Code strukturieren mit Modulen und Paketen 377

Module und Pakete 377

Die Standardbibliothek378

Module importieren 379

Module inspizieren 380

Namensräume 381

Direktimporte 382

Namenskonflikte vermeiden 382

Wie der Interpreter Module sucht 383

Pakete - Code von anderen 384

Wie Sie an Pakete kommen 385

Leser installiert pip 387

Pip installiert Pakete 388

Pip installiert Abhängigkeiten 391

Wo landen die Pakete? 392

Versionen 393

Pakete updaten 394

Spezifische Versionen installieren 395

Virtuelle Umgebungen - Paketkonflikte vermeiden durch venv 395

Versionen einfrieren ... 399

...und wieder auftauen 400

Module und Pakete aus eigener Züchtung401

Ausführbare Module importieren 402

Python-Code in einem Verzeichnis 404

Packungsbeilagen für den Versand 406

Inhaltsverzeichnis 19

TEIL V

Weniger kaputte Software 411

Kapitel 22

Stilfrage - was lesbaren Code ausmacht 413

Ein Befehl pro Zeile 414

Zeilenlänge unter 80 Zeichen 414

Hören Sie auf lange Zeilen! 416

Imports gehören nach oben 418

Leerzeichen vereinzeln418

Schleppkommata zum Zeilenschubsen 419

Unwirkliche Vergleiche mit Booleans419

Kapitel 23

Schleifen, trimmen, jäten421

Formatierer - den Code geraderücken 421

Linting - die Fusselbürste für Ihren Code 423

Sicherheitsprobleme vermeiden mit Bandit 428

Kapitel 24

Testen, Testen, Testen 431

Was ist ein Test?431

Intuitives Testen - jeder ist ein Tester432

doctest - Tests als Dokumentation 434

Das System under Test - die Wurst, um die es geht435

Ein erster Test 436

Doctest ausführen 437

Weitere Tests hinzufügen 438

Mit Tests gegen den Fehlerteufel 440

Ausnahmen testen 445

Testgetriebene Entwicklung 447

Schreiben Sie einen Test448

Rot - ein fehlgeschlagener Test448

Grün - ein erfolgreicher Test 449

Refactoring - notwendige Aufräumarbeiten449

unittest - wenn es mal komplexer wird 451

Die Anatomie eines Unit-Tests452

Assertions - große Erwartungen 454

unittest ausführen 455

Eine Funktion testgetrieben entwickeln 457

Refactoring - jetzt mit Sicherung 464

Fortgeschrittene Themen 467

Doppelgänger - Mocks und Stubs 468

Setup und Teardown 473

Kapitel 25

Typing - dem Interpreter Ratschläge geben475

Typ-Prüfung für Variablen 477

 für Sammlungen 479

20 Inhaltsverzeichnis

 für Funktionen 481

 für generische Funktionen 482

 für generische Listen483

 für bestimmte Protokolle 484

 für Datenklassen 486

TEIL VI

Wartezeiten vermeiden 489

Kapitel 26

Arbeitsteilung - wie ein Computer zwei Dinge gleichzeitig

erledigt 491

Multitasking - geteilte Aufmerksamkeit 492

Parallelisierung - geteiltes Leid 493

Zusammenfassung 494

Kapitel 27

Threads - nicht den Faden verlieren 495

Der rote Faden 495

Wofür Threads gut sind497

Wofür Threads nicht gut sind 498

Threads einfädeln 499

Locks - einer nach dem anderen 501

Teuflische Hintergrund-Threads 504

Kapitel 28

Multiprocessing - Arbeit auf mehrere Prozesse verteilen511

Nebenläufigkeit - ein Experiment 511

Aufgaben im Pool ausführen 516

Kapitel 29

Async - wenn Sie nicht auf IO warten möchten 519

TEIL VII

Netzwerkprogrammierung 523

Kapitel 30

Wie Netzwerke aufgebaut sind 525

Wie werden Daten übertragen? 526

Protokolle - Regeln zur Verständigung 527

Ein vereinfachtes Schichtenmodell 528

Die Anwendungsschicht 528

Die Transportschicht 529

Die Vermittlungsschicht 529

Die Übertragungsschicht529

Von oben nach unten 529

Gebräuchliche Protokolle 530

Die Transportschicht unter der Lupe531

UDP - schnell, aber unzuverlässig 531

Inhaltsverzeichnis 21

TCP - zuverlässig, aber langsam532

UDP oder TCP? 532

Header-Daten 533

Die Port-Nummer 534

IP-Adressen 535

Die eigene IP-Adresse herausfinden537

Kapitel 31

UDP - wenn's schnell gehen soll 539

Katz und Maus - Server und Client 539

Vorbereitung 540

Server - alles für die Katz 541

Client - hier kommt die Maus 543

Die Maus auf die Katze loslassen 545

»Richtige« IP-Adressen 546

Kapitel 32

TCP - wenn es ankommen muss 549

Verbindungsaufbau 549

Datenaustausch552

Daten empfangen553

Nachrichten 554

Over & Out555

Beispiel: Ein Briefkasten für genau eine Postkarte557

Ein einfaches Protokoll 557

Ausbaustufe 1 - ein Grundgerüst für Client und Server 559

Ausbaustufe 2 - ein erster Austausch561

Ausbaustufe 3 - Nachrichten lesen und schreiben 562

Ausbaustufe 4 - diskrete Typen566

Ausbaustufe 5 - Nachrichten speichern und abholen 568

Ausbaustufe 6 - Verbesserungen 571

Fehlerbehandlung - jeder macht mal Fehler 571

Nachrichten empfangen - aber echt jetzt! 574

Den Server laufen lassen575

Ausblick 575

Non-Blocking IO 575

Sicherheit 576

Weitere Features 580

TEIL VIII

Python im World Wide Web 583

Kapitel 33

Wie das World Wide Web aufgebaut ist585

Hypertext - verknüpfte Texte 585

Das WWW586

Die Einzelteile im Überblick 586

Webseiten und Ressourcen 587

Browser 587

Webserver 588

22 Inhaltsverzeichnis

Die Anatomie einer Webseite 588

HTML - das Grundgerüst588

Tags - Bausteine der Websprache 590

CSS - Webseiten mit Stil 592

JavaScript - wenn es zappeln soll 593

Seiten mit dem eingebauten Webserver ausliefern 594

Webanwendungen - mehr als nur eine Seite 596

Das Hypertext-Transfer-Protokoll 596

HTTP-Anfragen 597

HTTP-Methoden und -Ressourcen 597

Content-Negotiation - Inhalte aushandeln 598

HTTP-Antworten 599

Wichtige Status-Codes 599

Wichtige Header 600

Kapitel 34

Im Web surfen 603

Hausmittelchen: Webseiten öffnen mit der urllib 603

Requests: HTTP für Menschen604

Im Essen stochern mit Beautiful Soup 605

Scrapy - Daten im Spinnennetz 608

Die HTML-Struktur 610

Auswahlverfahren: CSS-Selektoren 611

Ein erstes Krabbeltier 613

Unterseiten aufrufen 614

Datensätze ausgeben 615

Kapitel 35

Profi-Webseiten mit Django 619

Was ist Django? 620

Datenbanken 621

Eine Vereinsseite623

Installieren623

Ein Projekt anlegen 624

Den Webserver starten 626

Eine App anlegen 627

Ihre Startseite 629

Das Schablonen-System 633

Ein Menü einfügen 635

CSS-Dateien einbinden 637

Platzhalter ausstanzen 640

Unterseiten einfügen 643

Daten modellieren 646

Wozu dienen die Modelle? 647

Der Ablauf beim Modellieren 647

Model-Planning 648

Modell erstellen 649

Migrationen generieren 651

Inhaltsverzeichnis 23

Zustand der Datenbank überprüfen 651

Migrationen erzeugen 653

Migration anwenden 653

Model ausprobieren 654

Das Modell aktualisieren655

Rasenmäher-Übersichtsseiten657

Detailseiten für Rasenmäher 661

Detailseiten verlinken 663

Im Lieferumfang: Das Admin-Backend 664

Zusammenfassung 670

TEIL IX

Der Python im Daten-Dschungel 673

Kapitel 36

Interaktive Notebooks 675

Projekt Jupyter 675

Die Notebook-Umgebung installieren 676

Erste Schritte im Notebook 677

Tastenkürzel - Finger weg von der Maus 678

Code und Dokumentation 679

Magische Zellen 681

Hilfe, ich habe mich verlaufen!681

Interaktive Zellen 683

Kapitel 37

Daten jonglieren mit Pandas 689

Datensätze laden 689

Zeilen ausgeben690

Spalten anzeigen692

Series-Objekte: Schön der Reihe nach 693

Deskriptive Statistiken generieren 695

Zeilen aus Series und DataFrames abfragen 696

Interaktiv filtern 698

Daten gruppieren 700

Fehlende Daten entfernen 704

Resampling - Zeitreihen untersuchen 706

Kapitel 38

Linien, Balken, Torten - Daten visualisieren mit

Matplotlib 711

Matplotlib - wie die Axes im Walde 711

Interaktive Plots 714

Eine kleine Diagramm-Galerie717

Torten- und Balkendiagramme718

Heatmaps 721

Boxplots 723

Streudiagramme 725

Histogramme 727

Ausblick: Schnellere und schönere Diagramme 729

24 Inhaltsverzeichnis

TEIL X

GUI-Programmierung 731

Kapitel 39

Ansichtssache - Programme mit GUI 733

Alternativen - was gibt es sonst so?733

Vorteile 734

Nachteile 735

Herausforderungen 738

Kapitel 40

GUIs mit tkinter 739

Sprechen Sie GUI? 740

Der Entwurf einer GUI-Anwendung 741

Die Problemstellung umreißen742

Eine Skizze des Ablaufs 743

Eine Skizze der GUI 744

Umsetzung746

Ein Fenster erzeugen 746

Widgets hinzufügen 748

Widgets arrangieren 750

Das Layout auflockern 752

Eine Datei öffnen 752

Eine Aktion per Mausklick auslösen 753

Einen Datei-Dialog öffnen754

Die gewählte Datei anzeigen 755

Die Datei hashen 759

Verfügbare Algorithmen anzeigen 759

Einen Algorithmus auswählen 760

Den Hash-Wert berechnen 763

Den Hash-Wert anzeigen764

Fehlerbehandlung765

In die Zwischenablage kopieren768

Statusanzeige updaten 769

Große Dateien hashen 770

Den Fortschrittsbalken aktualisieren 771

Häppchenweise hashen 771

Fortschritt herauslesen 773

Hintergrund-Thread 775

Abschließende Feinarbeiten - der letzte Schliff 777

Gutes Aussehen? Kein Thema!778

Aufgelöst - den Tränen nah 781

Die Skalierung anpassen783

GUI ohne Konsolenfenster starten 785

Windows 785

macOS 785

Linux 785

Inhaltsverzeichnis 25

TEIL XI

Der Top-Ten-Teil 789

Kapitel 41

Dos and Don'ts 791

Zehn Dinge, die Sie tun sollten791

Zehn Dinge, die Sie unterlassen sollten 792

Kapitel 42

Zehn elegante Einzeiler 793

Zwei Variablen vertauschen 793

Negativ Runden 793

Aus einer Liste einen String machen793

Eine verschachtelte Liste plätten 794

Doppelte Elemente entfernen794

Eine Liste paarweise durchlaufen 794

Vier Items gleichzeitig iterieren 794

Zwei Listen zu einem Dictionary kombinieren 795

Eine Matrix transponieren 795

Eine geheime Nachricht dekodieren796

Stichwortverzeichnis 797

 

最近チェックした商品