Python 3

Das umfassende Handbuch: Sprachgrundlagen, Objektorientierung, Modularisierung
Media-Kombination
985 Seiten
2012 | 3. Auflage
Rheinwerk
978-3-8362-1925-9 (ISBN)

Lese- und Medienproben

Python 3 - Johannes Ernesti, Peter Kaiser
39,90 inkl. MwSt
zur Neuauflage
  • Titel erscheint in neuer Auflage
  • Artikel merken
Zu diesem Artikel existiert eine Nachauflage
Entdecken Sie die Möglichkeiten von Python 3. Egal, ob Sie erst anfangen, mit Python zu arbeiten oder bei ihrer Arbeit etwas nachschlagen möchten - in diesem Buch finden Sie alles, was Sie zu Python wissen müssen. Angefangen mit einer Einführung in die Sprache bietet es eine Sprachreferenz, die Beschreibung der Standardbibliothek und ausführliche Informationen zu professionellen Themen wie GUI-Entwicklung, Anbindung an C oder wissenschaftliches Rechnen. Dabei wird ausführlich auf die wesentlichen Unterschiede zwischen Python 3 und früheren Versionen eingegangen. Wenn Sie bisher noch mit Python 2.x arbeiten, helfen Ihnen die Autoren bei der Migration Ihrer bestehenden Projekte.


Aus dem Inhalt:





* Einführung in Python
* Sprachgrundlagen
* Modularisierung
* Objektorientierung
* Mathematische Module
* Reguläre Ausdrücke
* Datums- und Zeitfunktionen
* Schnittstellen zum Betriebssystem
* Thread-Programmierung
* Datenspeicherung
* Netzwerkkommunikation
* Fehlerbehandlung
* Distribution von Python-Projekten
* Programmoptimierung
* GUI-Programmierung
* Wissenschaftliches Rechnen
* Anbindung an C
* Migration von Python 2.x auf 3

Galileo Press heißt von jetzt an Rheinwerk Verlag.

Johannes Ernesti kennt Python wie seine Westentasche. Er studiert Informatik an der Universiät in Karlsruhe.

Peter Kaiser studiert Informatik an der Universität in Karlsruhe. Er arbeitet schon länger mit Python und erstellt professionelle Programme.

... Über dieses Buch ... 19



Teil I ... Einstieg in Python ... 25



1 ... Überblick über Python ... 27

... 1.1 ... Geschichte und Entstehung ... 27

... 1.2 ... Grundlegende Konzepte ... 28

... 1.3 ... Einsatzmöglichkeiten und Stärken ... 29

... 1.4 ... Einsatzbeispiele ... 30



2 ... Die Arbeit mit Python ... 31

... 2.1 ... Die Verwendung von Python ... 31

... 2.2 ... Tippen, kompilieren, testen ... 34



3 ... Der interaktive Modus ... 39

... 3.1 ... Ganze Zahlen ... 40

... 3.2 ... Gleitkommazahlen ... 41

... 3.3 ... Zeichenketten ... 42

... 3.4 ... Listen ... 43

... 3.5 ... Variablen ... 43

... 3.6 ... Logische Ausdrücke ... 45

... 3.7 ... Funktionen und Methoden ... 47

... 3.8 ... Bildschirmausgaben ... 49



4 ... Grundlegendes zu Python-Programmen ... 51

... 4.1 ... Grundstruktur eines Python-Programms ... 51

... 4.2 ... Das erste Programm ... 53

... 4.3 ... Kommentare ... 55

... 4.4 ... Der Fehlerfall ... 56



5 ... Kontrollstrukturen ... 59

... 5.1 ... Fallunterscheidungen ... 59

... 5.2 ... Schleifen ... 64

... 5.3 ... Die pass-Anweisung ... 73



6 ... Das Laufzeitmodell ... 75

... 6.1 ... Die Struktur von Instanzen ... 77

... 6.2 ... Referenzen und Instanzen freigeben ... 81

... 6.3 ... Mutable vs. immutable Datentypen ... 82



7 ... Basisdatentypen ... 87

... 7.1 ... Operatoren ... 88

... 7.2 ... Das Nichts -- NoneType ... 92

... 7.3 ... Numerische Datentypen ... 93

... 7.4 ... Parameter von Funktionen und Methoden ... 113

... 7.5 ... Sequentielle Datentypen ... 115

... 7.6 ... Mappings ... 173

... 7.7 ... Mengen ... 185



8 ... Dateien ... 197

... 8.1 ... Datenströme ... 197

... 8.2 ... Daten aus einer Datei auslesen ... 198

... 8.3 ... Daten in eine Datei schreiben ... 202

... 8.4 ... Verwendung des Dateiobjekts ... 204



9 ... Funktionen ... 209

... 9.1 ... Schreiben einer Funktion ... 211

... 9.2 ... Funktionsparameter ... 215

... 9.3 ... Namensräume ... 225

... 9.4 ... Lokale Funktionen ... 229

... 9.5 ... Anonyme Funktionen ... 230

... 9.6 ... Rekursion ... 231

... 9.7 ... Eingebaute Funktionen ... 231



Teil II ... Fortgeschrittene Programmiertechniken ... 255



10 ... Modularisierung ... 257

... 10.1 ... Einbinden globaler Module ... 257

... 10.2 ... Lokale Module ... 260

... 10.3 ... Pakete ... 262

... 10.4 ... Built-in Functions ... 267



11 ... Objektorientierung ... 269

... 11.1 ... Klassen ... 274

... 11.2 ... Vererbung ... 280

... 11.3 ... Setter und Getter und Property Attributes ... 295

... 11.4 ... Klassenattribute und Klassenmethoden sowie statische Methoden ... 298

... 11.5 ... Magic Methods und Magic Attributes ... 302

... 11.6 ... Built-in Functions für Objektorientierung ... 322

... 11.7 ... Objektphilosophie ... 326



12 ... Weitere Spracheigenschaften ... 329

... 12.1 ... Exception Handling ... 329

... 12.2 ... Comprehensions ... 346

... 12.3 ... Generatoren ... 349

... 12.4 ... Iteratoren ... 353

... 12.5 ... Docstrings ... 363

... 12.6 ... Interpreter im Interpreter ... 365

... 12.7 ... Die with-Anweisung ... 368

... 12.8 ... Function Annotations ... 371

... 12.9 ... Function Decorator ... 373

... 12.10 ... assert ... 377

... 12.11 ... Weitere Aspekte der Syntax ... 378

... 12.12 ... Geplante Sprachelemente ... 380



Teil III ... Die Standardbibliothek ... 381



13 ... Mathematik ... 385

... 13.1 ... Mathematische Funktionen -- math, cmath ... 385

... 13.2 ... Zufallszahlengenerator -- random ... 394

... 13.3 ... Präzise Dezimalzahlen -- decimal ... 399

... 13.4 ... Spezielle Generatoren -- itertools ... 405



14 ... Strings ... 415

... 14.1 ... Reguläre Ausdrücke -- re ... 415

... 14.2 ... Lokalisierung von Programmen -- gettext ... 442

... 14.3 ... Hash-Funktionen -- hashlib ... 446



15 ... Datum und Zeit ... 451

... 15.1 ... Elementare Zeitfunktionen -- time ... 451

... 15.2 ... Komfortable Datumsfunktionen -- datetime ... 460



16 ... Schnittstelle zum Betriebssystem ... 481

... 16.1 ... Funktionen des Betriebssystems -- os ... 481

... 16.2 ... Umgang mit Pfaden -- os.path ... 490

... 16.3 ... Zugriff auf das Dateisystem -- shutil ... 495

... 16.4 ... Zugriff auf die Laufzeitumgebung -- sys ... 501

... 16.5 ... Informationen über das System -- platform ... 511

... 16.6 ... Kommandozeilenparameter -- argparse ... 512

... 16.7 ... Kopieren von Instanzen -- copy ... 519

... 16.8 ... Das Programmende -- atexit ... 523



17 ... Parallele Programmierung ... 525

... 17.1 ... Prozesse, Multitasking und Threads ... 525

... 17.2 ... Die Thread-Unterstützung in Python ... 528

... 17.3 ... Das Modul _thread ... 528

... 17.4 ... Das Modul threading ... 536



18 ... Datenspeicherung ... 549

... 18.1 ... Komprimierte Dateien lesen und schreiben -- gzip ... 549

... 18.2 ... XML ... 551

... 18.3 ... Datenbanken ... 575

... 18.4 ... Serialisierung von Instanzen -- pickle ... 595

... 18.5 ... Das Tabellenformat CSV -- csv ... 599

... 18.6 ... Temporäre Dateien -- tempfile ... 604



19 ... Netzwerkkommunikation ... 607

... 19.1 ... Socket API ... 609

... 19.2 ... URLs ... 634

... 19.3 ... FTP -- ftplib ... 646

... 19.4 ... E-Mail ... 655

... 19.5 ... Telnet -- telnetlib ... 676

... 19.6 ... XML-RPC ... 680



20 ... Debugging ... 691

... 20.1 ... Der Debugger ... 691

... 20.2 ... Inspizieren von Instanzen -- inspect ... 694

... 20.3 ... Formatierte Ausgabe von Instanzen -- pprint ... 703

... 20.4 ... Logdateien -- logging ... 706

... 20.5 ... Automatisiertes Testen ... 713

... 20.6 ... Traceback-Objekte -- traceback ... 722

... 20.7 ... Analyse des Laufzeitverhaltens ... 726



Teil IV ... Weiterführende Themen ... 737



21 ... Distribution von Python-Projekten ... 739

... 21.1 ... Erstellen von Distributionen -- distutils ... 739

... 21.2 ... Erstellen von EXE-Dateien -- cx_Freeze ... 750



22 ... Optimierung ... 753

... 22.1 ... Die Optimize-Option ... 754

... 22.2 ... Mutable vs. immutable ... 754

... 22.3 ... Schleifen ... 755

... 22.4 ... Funktionsaufrufe ... 756

... 22.5 ... C ... 756

... 22.6 ... Lookup ... 757

... 22.7 ... Exceptions ... 757

... 22.8 ... Keyword Arguments ... 758



23 ... Grafische Benutzeroberflächen ... 759

... 23.1 ... Toolkits ... 759

... 23.2 ... Einführung in tkinter ... 762

... 23.3 ... Einführung in PyQt ... 826

... 23.4 ... Signale und Slots ... 836

... 23.5 ... Wichtige Widgets ... 839

... 23.6 ... Zeichenfunktionalität ... 850

... 23.7 ... Model-View-Architektur ... 863



24 ... Wissenschaftliches Rechnen ... 881

... 24.1 ... Installation ... 882

... 24.2 ... Das Modellprogramm ... 883

... 24.3 ... Überblicke über die Module numpy und scipy ... 891



25 ... Anbindung an andere Programmiersprachen ... 903

... 25.1 ... Dynamisch ladbare Bibliotheken -- ctypes ... 904

... 25.2 ... Schreiben von Extensions ... 914

... 25.3 ... Python als eingebettete Scriptsprache ... 922



26 ... Insiderwissen ... 933

... 26.1 ... URLs im Standardbrowser öffnen -- webbrowser ... 933

... 26.2 ... Funktionsschnittstellen vereinfachen -- functools ... 934

... 26.3 ... Weitere Datentypen -- collections ... 938

... 26.4 ... Interpretieren von Binärdaten -- struct ... 946

... 26.5 ... Versteckte Passworteingaben -- getpass ... 949

... 26.6 ... Kommandozeilen-Interpreter -- cmd ... 949

... 26.7 ... Dateiinterface für Strings -- io.StringIO ... 952



27 ... Von Python 2 nach Python 3 ... 955

... 27.1 ... Die wichtigsten Unterschiede ... 958

... 27.2 ... Automatische Konvertierung ... 964



... Anhang ... 969

... A.1 ... Reservierte Wörter ... 969

... A.2 ... Built-in Functions ... 969



... Index ... 973

Erscheint lt. Verlag 30.5.2012
Reihe/Serie Galileo Computing
Sprache deutsch
Maße 168 x 240 mm
Gewicht 1815 g
Themenwelt Mathematik / Informatik Informatik Web / Internet
Schlagworte Python • Python 3 • Python (Programmiersprache) • Scripting • Skriptsprache • Webprogrammierung
ISBN-10 3-8362-1925-5 / 3836219255
ISBN-13 978-3-8362-1925-9 / 9783836219259
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich