Verkauf durch Sack Fachmedien

Ernesti / Kaiser

Python 3

Das umfassende Handbuch: Sprachgrundlagen, Objektorientierte Programmierung, Modularisierung (Ausgabe 2017)

Medium: Buch
ISBN: 978-3-8362-5864-7
Verlag: Rheinwerk Verlag GmbH
Erscheinungstermin: 07.11.2017
Lieferfrist: bis zu 10 Tage

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

- Webentwicklung mit Django

- GUI-Programmierung

- Wissenschaftliches Rechnen

- Anbindung an C

- Migration von Python 2.x auf 3


Produkteigenschaften


  • Artikelnummer: 9783836258647
  • Medium: Buch
  • ISBN: 978-3-8362-5864-7
  • Verlag: Rheinwerk Verlag GmbH
  • Erscheinungstermin: 07.11.2017
  • Sprache(n): Deutsch
  • Auflage: 5. aktualisierte Auflage 2017
  • Serie: Rheinwerk Computing
  • Produktform: Gebunden
  • Gewicht: 1810 g
  • Seiten: 1040
  • Format (B x H x T): 174 x 246 x 58 mm
  • Ausgabetyp: Kein, Unbekannt
Autoren/Hrsg.

Autoren

Johannes Ernesti ist Diplom-Mathematiker und promoviert am Karlsruher Institut für Technologie (KIT) in angewandter Mathematik. Python ist unverzichtbar für seine Arbeit und wichtiger Bestandteil seiner Lehrtätigkeit.

Peter Kaiser ist Diplom-Informatiker und promoviert am Karlsruher Institut für Technologie (KIT) in humanoider Robotik. Die Programmiersprache Python ist ein wichtiges Hilfsmittel für seine wissenschaftliche Arbeit.

1.  Einleitung. 27  2.  Die Programmiersprache Python. 35  2.1. Historie, Konzepte, Einsatzgebiete. 35  2.2. Die Installation von Python. 38  2.3. Die Verwendung von Python. 41

TEIL I  Einstieg in Python. 43  3.  Erste Schritte im interaktiven Modus. 45  3.1. Ganze Zahlen. 46  3.2. Gleitkommazahlen. 47  3.3. Zeichenketten. 48  3.4. Listen. 49  3.5. Dictionarys. 49  3.6. Variablen. 50  3.7. Logische Ausdrücke. 52  3.8. Funktionen und Methoden. 54  3.9. Bildschirmausgaben. 56  4.  Der Weg zum ersten Programm. 59  4.1. Tippen, kompilieren, testen. 59  4.2. Grundstruktur eines Python-Programms. 63  4.3. Das erste Programm. 66  4.4. Kommentare. 69  4.5. Der Fehlerfall. 69  5.  Kontrollstrukturen. 71  5.1. Fallunterscheidungen. 71  5.2. Schleifen. 76  5.3. Die pass-Anweisung. 84  6.  Dateien. 85  6.1. Datenströme. 85  6.2. Daten aus einer Datei auslesen. 86  6.3. Daten in eine Datei schreiben. 90  6.4. Das Dateiobjekt erzeugen. 91  7.  Das Laufzeitmodell. 97  7.1. Die Struktur von Instanzen. 99  7.2. Referenzen und Instanzen freigeben. 103  7.3. Mutable vs. immutable Datentypen. 104  8.  Funktionen, Methoden und Attribute. 109  8.1. Parameter von Funktionen und Methoden. 109  8.2. Attribute. 112  9.  Informationsquellen zu Python. 113  9.1. Die Built-in Function help. 113  9.2. Die Onlinedokumentation. 114  9.3. PEPs. 114

TEIL II  Datentypen. 117

10.  Das Nichts -- NoneType. 119

11.  Operatoren. 121

12.  Numerische Datentypen. 125  12.1. Arithmetische Operatoren. 125  12.2. Vergleichende Operatoren. 127  12.3. Konvertierung zwischen numerischen Datentypen. 128  12.4. Ganzzahlen -- int. 129  12.5. Gleitkommazahlen -- float. 135  12.6. Boolesche Werte -- bool. 137  12.7. Komplexe Zahlen -- complex. 143

13.  Sequenzielle Datentypen. 147  13.1. Operationen auf Instanzen sequenzieller Datentypen. 148  13.2. Listen -- list. 159  13.3. Unveränderliche Listen -- tuple. 171  13.4. Strings -- str, bytes, bytearray. 174

14.  Zuordnungen. 207  14.1. Dictionary -- dict. 207

15.  Mengen. 219  15.1. Die Datentypen set und frozenset. 219  15.2. Veränderliche Mengen -- set. 227  15.3. Unveränderliche Mengen -- frozenset. 229

16.  Collections. 231  16.1. Verkettete Dictionarys. 231  16.2. Zählen von Häufigkeiten. 232  16.3. Dictionarys mit Standardwerten. 235  16.4. Doppelt verkettete Listen. 235  16.5. Benannte Tupel. 237  16.6. Sortierte Dictionarys. 239

17.  Datum und Zeit. 241  17.1. Elementare Zeitfunktionen -- time. 241  17.2. Objektorientierte Datumsverwaltung -- datetime. 249

18.  Aufzählungstypen -- Enum. 261  18.1. Aufzählungstyp für Bitmuster -- Flag. 263  18.2. Ganzzahlige Aufzählungstypen -- IntEnum. 264

TEIL III  Fortgeschrittene Programmiertechniken. 265

19.  Funktionen. 267  19.1. Schreiben einer Funktion. 269  19.2. Funktionsobjekte. 272  19.3. Funktionsparameter. 273  19.4. Namensräume. 283  19.5. Anonyme Funktionen. 288  19.6. Annotationen. 289  19.7. Rekursion. 291  19.8. Eingebaute Funktionen. 291

20.  Modularisierung. 317  20.1. Einbinden globaler Module. 317  20.2. Lokale Module. 320  20.3. Pakete. 323  20.4. Das Paket importlib. 327

21.  Objektorientierung. 333  21.1. Klassen. 338  21.2. Vererbung. 343  21.3. Setter und Getter und Property Attributes. 358  21.4. Klassenattribute und Klassenmethoden sowie statische Methoden. 360  21.5. Built-in Functions für Objektorientierung. 363  21.6. Objektphilosophie. 367  21.7. Magic Methods und Magic Attributes. 369

22.  Ausnahmebehandlung. 389  22.1. Exceptions. 389  22.2. Zusicherungen -- assert. 402

23.  Iteratoren. 403  23.1. Comprehensions. 403  23.2. Generatoren. 407  23.3. Iteratoren. 414  23.4. Spezielle Generatoren -- itertools. 424

24.  Kontextobjekte. 435  24.1. Die with-Anweisung. 435  24.2. Hilfsfunktionen für with-Kontexte -- contextlib. 438

25.  Manipulation von Funktionen und Methoden. 441  25.1. Decorator. 441  25.2. Das Modul functools. 444

TEIL IV  Die Standardbibliothek. 453

26.  Mathematik. 455  26.1. Mathematische Funktionen -- math, cmath. 455  26.2. Zufallszahlengenerator -- random. 460  26.3. Präzise Dezimalzahlen -- decimal. 464

27.  Kryptografie. 471  27.1. Hash-Funktionen -- hashlib. 471  27.2. Verschlüsselung -- PyCrypto. 476

28.  Reguläre Ausdrücke. 485  28.1. Syntax regulärer Ausdrücke. 485  28.2. Verwendung des Moduls. 496  28.3. Ein einfaches Beispielprogramm -- Searching. 503  28.4. Ein komplexeres Beispielprogramm -- Matching. 504

29.  Schnittstelle zu Betriebssystem und Laufzeitumgebung. 509  29.1. Funktionen des Betriebssystems -- os. 509  29.2. Zugriff auf die Laufzeitumgebung -- sys. 512

30.  Kommandozeilenparameter. 519  30.1. Taschenrechner -- ein einfaches Beispiel. 520  30.2. Ein weiteres Beispiel. 524

31.  Dateisystem. 527  31.1. Zugriff auf das Dateisystem mit os. 527  31.2. Dateipfade -- os.path. 534  31.3. Zugriff auf das Dateisystem -- shutil. 538  31.4. Temporäre Dateien -- tempfile. 544

32.  Parallele Programmierung. 547  32.1. Prozesse, Multitasking und Threads. 547  32.2. Pythons Schnittstellen zur Parallelisierung. 550  32.3. Parallelisierung von Funktionsaufrufen. 551  32.4. Die Module threading und multiprocessing. 562  32.5. Die Thread-Unterstützung in Python. 563  32.6. Einblick in das Modul multiprocessing. 572  32.7. Ausblick. 574

33.  Datenspeicherung. 575  33.1. Komprimierte Dateien lesen und schreiben -- gzip. 575  33.2. XML. 577  33.3. Datenbanken. 590  33.4. Serialisierung von Instanzen -- pickle. 611  33.5. Das Datenaustauschformat JSON -- json. 614  33.6. Das Tabellenformat CSV -- csv. 615

34.  Netzwerkkommunikation. 623  34.1. Socket API. 624  34.2. URLs -- urllib. 643  34.3. FTP -- ftplib. 652  34.4. EMail. 659  34.5. Telnet -- telnetlib. 677  34.6. XML-RPC. 680

35.  Debugging und Qualitätssicherung. 691  35.1. Der Debugger. 691  35.2. Formatierte Bildschirmausgabe -- pprint. 694  35.3. Logdateien -- logging. 696  35.4. Automatisiertes Testen. 702  35.5. Analyse des Laufzeitverhaltens. 710  35.6. Optimierung. 720

36.  Dokumentation. 727  36.1. Docstrings. 727  36.2. Automatisches Erstellen einer Dokumentation -- pydoc. 729

TEIL V  Weiterführende Themen. 731

37.  Anbindung an andere Programmiersprachen. 733  37.1. Dynamisch ladbare Bibliotheken -- ctypes. 734  37.2. Schreiben von Extensions. 742  37.3. Python als eingebettete Skriptsprache. 752  37.4. Alternative Interpreter. 757

38.  Distribution von Python-Projekten. 769  38.1. Eine Geschichte der Distributionen in Python. 769  38.2. Erstellen von Distributionen -- setuptools. 771  38.3. Der Python-Paketmanager -- pip. 782  38.4. Der Paketmanager conda. 783  38.5. Lokalisierung von Programmen -- gettext. 786

39.  Grafische Benutzeroberflächen. 791  39.1. Toolkits. 791  39.2. Einführung in tkinter. 794  39.3. Einführung in PyQt. 839  39.4. Signale und Slots. 849  39.5. Wichtige Widgets. 853  39.6. Zeichenfunktionalität. 860  39.7. Model-View-Architektur. 872

40.  Python als serverseitige Programmiersprache im WWW -- ein Einstieg in Django. 889  40.1. Konzepte und Besonderheiten von Django. 890  40.2. Installation von Django. 891  40.3. Erstellen eines neuen Django-Projekts. 894  40.4. Erstellung einer Applikation. 898

41.  Wissenschaftliches Rechnen. 939  41.1. Installation. 940  41.2. Das Modellprogramm. 941  41.3. Überblick über die Module numpy und scipy. 949

42.  Insiderwissen. 961  42.1. URLs im Standardbrowser öffnen -- webbrowser. 961  42.2. Interpretieren von Binärdaten -- struct. 961  42.3. Versteckte Passworteingabe. 964  42.4. Kommandozeilen-Interpreter. 965  42.5. Dateiinterface für Strings -- io.StringIO. 967  42.6. Generatoren als Konsumenten. 968  42.7. Kopieren von Instanzen -- copy. 973  42.8. Die interaktive Python-Shell -- IPython. 977  42.9. Das Jupyter Notebook. 980  42.10. Bildverarbeitung -- Pillow. 983

43.  Von Python 2 nach Python 3. 995  43.1. Die wichtigsten Unterschiede. 998  43.2. Automatische Konvertierung. 1004  43.3. Geplante Sprachelemente. 1007  A.  Anhang. 1009  A.1. Reservierte Wörter. 1009  A.2. Eingebaute Funktionen. 1009  A.3. Eingebaute Exceptions. 1013  A.4. Python IDEs. 1017  Index. 1025