Python 3 - Das umfassende Handbuch

Python 3 - Das umfassende Handbuch

von: Johannes Ernesti, Peter Kaiser

Galileo Press, 2012

ISBN: 9783836219259

Sprache: Deutsch

986 Seiten, Download: 12305 KB

 
Format:  PDF, auch als Online-Lesen

geeignet für: Apple iPad, Android Tablet PC's Online-Lesen PC, MAC, Laptop


 

eBook anfordern

Mehr zum Inhalt

Python 3 - Das umfassende Handbuch



  Liebe Leserin, lieber Leser, 3  
  Auf einen Blick 4  
  Inhalt 6  
  Über dieses Buch 20  
  Kapitel 1 28  
     Überblick über Python 28  
        1.1 Geschichte und Entstehung 28  
        1.2 Grundlegende Konzepte 29  
        1.3 Einsatzmöglichkeiten und Stärken 30  
        1.4 Einsatzbeispiele 31  
  Kapitel 2 32  
     Die Arbeit mit Python 32  
        2.1 Die Verwendung von Python 32  
           2.1.1 Windows 34  
           2.1.2 Linux 34  
           2.1.3 Mac OS X 34  
        2.2 Tippen, kompilieren, testen 35  
           2.2.1 Shebang 36  
           2.2.2 Interne Abläufe 37  
  Kapitel 3 40  
     Der interaktive Modus 40  
        3.1 Ganze Zahlen 41  
        3.2 Gleitkommazahlen 42  
        3.3 Zeichenketten 43  
        3.4 Listen 44  
        3.5 Variablen 44  
        3.6 Logische Ausdrücke 46  
        3.7 Funktionen und Methoden 48  
           3.7.1 Funktionen 48  
           3.7.2 Methoden 49  
        3.8 Bildschirmausgaben 50  
  Kapitel 4 52  
     Grundlegendes zu Python- Programmen 52  
        4.1 Grundstruktur eines Python-Programms 52  
        4.2 Das erste Programm 54  
        4.3 Kommentare 56  
        4.4 Der Fehlerfall 57  
  Kapitel 5 60  
     Kontrollstrukturen 60  
        5.1 Fallunterscheidungen 60  
           5.1.1 Die if-Anweisung 61  
           5.1.2 Conditional Expressions 64  
        5.2 Schleifen 65  
           5.2.1 Die while-Schleife 66  
           5.2.2 Vorzeitiger Abbruch einer Schleife 66  
           5.2.3 Erkennen eines Schleifenabbruchs 67  
           5.2.4 Vorzeitiger Abbruch eines Schleifendurchlaufs 69  
           5.2.5 Die for-Schleife 71  
           5.2.6 Die for-Schleife als Zählschleife 72  
        5.3 Die pass-Anweisung 74  
  Kapitel 6 76  
     Das Laufzeitmodell 76  
        6.1 Die Struktur von Instanzen 78  
           6.1.1 Datentyp 78  
           6.1.2 Wert 79  
           6.1.3 Identität 81  
        6.2 Referenzen und Instanzen freigeben 82  
        6.3 Mutable vs. immutable Datentypen 83  
           6.3.1 Mutable Datentypen und Seiteneffekte 85  
  Kapitel 7 88  
     Basisdatentypen 88  
        7.1 Operatoren 89  
        7.2 Das Nichts - NoneType 93  
        7.3 Numerische Datentypen 94  
           7.3.1 Arithmetische Operatoren 94  
           7.3.2 Vergleichende Operatoren 96  
           7.3.3 Konvertierung zwischen numerischen Datentypen 97  
           7.3.4 Ganzzahlen - int 97  
           7.3.5 Gleitkommazahlen - float 103  
           7.3.6 Boolesche Werte - bool 105  
           7.3.7 Komplexe Zahlen - complex 111  
        7.4 Parameter von Funktionen und Methoden 114  
           7.4.1 Wiederholung 114  
           7.4.2 Parameter 115  
        7.5 Sequentielle Datentypen 116  
           7.5.1 Operationen auf Instanzen sequentieller Datentypen 119  
           7.5.2 Listen - »list« 129  
           7.5.3 Unveränderliche Listen - tuple 140  
           7.5.4 Strings - str, bytes, bytearray 143  
        7.6 Mappings 174  
           7.6.1 Dictionary - dict 175  
        7.7 Mengen 186  
           7.7.1 Die Datentypen set und frozenset 186  
           7.7.2 Veränderliche Mengen - set 194  
           7.7.3 Unveränderliche Mengen - frozenset 196  
  Kapitel 8 198  
     Dateien 198  
        8.1 Datenströme 198  
        8.2 Daten aus einer Datei auslesen 199  
        8.3 Daten in eine Datei schreiben 203  
        8.4 Verwendung des Dateiobjekts 205  
  Kapitel 9 210  
     Funktionen 210  
        9.1 Schreiben einer Funktion 212  
        9.2 Funktionsparameter 216  
           9.2.1 Optionale Parameter 216  
           9.2.2 Schlüsselwortparameter 217  
           9.2.3 Beliebige Anzahl von Parametern 218  
           9.2.4 Reine Schlüsselwortparameter 220  
           9.2.5 Entpacken einer Parameterliste 222  
           9.2.6 Seiteneffekte 223  
        9.3 Namensräume 226  
           9.3.1 Zugriff auf globale Variablen - global 226  
           9.3.2 Zugriff auf den globalen Namensraum 227  
           9.3.3 Zugriff auf übergeordnete Namensräume - nonlocal 228  
        9.4 Lokale Funktionen 230  
        9.5 Anonyme Funktionen 231  
        9.6 Rekursion 232  
        9.7 Eingebaute Funktionen 232  
  Kapitel 10 258  
     Modularisierung 258  
        10.1 Einbinden globaler Module 258  
        10.2 Lokale Module 261  
           10.2.1 Namenskonflikte 262  
           10.2.2 Modulinterne Referenzen 263  
        10.3 Pakete 263  
           10.3.1 Absolute und relative Import-Anweisungen 266  
           10.3.2 Importieren aller Module eines Pakets 267  
        10.4 Built-in Functions 268  
  Kapitel 11 270  
     Objektorientierung 270  
        11.1 Klassen 275  
           11.1.1 Definieren von Methoden 277  
           11.1.2 Der Konstruktor und die Erzeugung von Attributen 278  
        11.2 Vererbung 281  
           11.2.1 Technische Grundlagen 282  
           11.2.2 Die Klasse GirokontoMitTagesumsatz 284  
           11.2.3 Beispiele möglicher Erweiterungen 290  
           11.2.4 Ausblick 294  
           11.2.5 Mehrfachvererbung 295  
        11.3 Setter und Getter und Property Attributes 296  
        11.4 Klassenattribute und Klassenmethoden sowie statische Methoden 299  
        11.5 Magic Methods und Magic Attributes 303  
           11.5.1 Allgemeine Magic Methods 303  
           11.5.2 Zugriff auf Attribute anpassen 307  
           11.5.3 Operatoren überladen 310  
           11.5.4 Datentypen emulieren 318  
        11.6 Built-in Functions für Objektorientierung 323  
           11.6.1 Funktionen für die Verwaltung der Attribute einer Instanz 324  
           11.6.2 Funktionen für Informationen über die Klassenhierarchie 325  
        11.7 Objektphilosophie 327  
  Kapitel 12 330  
     Weitere Spracheigenschaften 330  
        12.1 Exception Handling 330  
           12.1.1 Eingebaute Exceptions 331  
           12.1.2 Werfen einer Exception 335  
           12.1.3 Abfangen einer Exception 336  
           12.1.4 Eigene Exceptions 341  
           12.1.5 Erneutes Werfen einer Exception 343  
           12.1.6 Exception Chaining 345  
        12.2 Comprehensions 347  
           12.2.1 List Comprehensions 347  
           12.2.2 Dict Comprehensions 349  
           12.2.3 Set Comprehensions 350  
        12.3 Generatoren 350  
        12.4 Iteratoren 354  
        12.5 Docstrings 364  
        12.6 Interpreter im Interpreter 366  
        12.7 Die with-Anweisung 369  
        12.8 Function Annotations 372  
        12.9 Function Decorator 374  
        12.10 assert 378  
        12.11 Weitere Aspekte der Syntax 379  
           12.11.1 Umbrechen langer Zeilen 379  
           12.11.2 Zusammenfügen mehrerer Zeilen 380  
        12.12 Geplante Sprachelemente 381  
  Kapitel 13 386  
     Mathematik 386  
        13.1 Mathematische Funktionen - math, cmath 386  
           13.1.1 Zahlentheoretische Funktionen 390  
           13.1.2 Exponential- und Logarithmusfunktionen 392  
           13.1.3 Trigonometrische Funktionen 393  
           13.1.4 Funktionen aus cmath 395  
        13.2 Zufallszahlengenerator - random 395  
           13.2.1 Steuerungsfunktionen 397  
           13.2.2 Funktionen für ganze Zahlen 398  
           13.2.3 Funktionen für Sequenzen 399  
           13.2.4 Alternative Generatoren 400  
        13.3 Präzise Dezimalzahlen - decimal 400  
           13.3.1 Verwendung des Datentyps 401  
           13.3.2 Nichtnumerische Werte 404  
           13.3.3 Das Context-Objekt 405  
        13.4 Spezielle Generatoren - itertools 406  
  Kapitel 14 416  
     Strings 416  
        14.1 Reguläre Ausdrücke - re 416  
           14.1.1 Syntax regulärer Ausdrücke 417  
           14.1.2 Verwendung des Moduls re 428  
           14.1.3 Ein einfaches Beispielprogramm - Searching 439  
           14.1.4 Ein komplexeres Beispielprogramm - Matching 440  
        14.2 Lokalisierung von Programmen - gettext 443  
           14.2.1 Beispiel für die Verwendung von gettext 444  
        14.3 Hash-Funktionen - hashlib 447  
           14.3.1 Verwendung des Moduls 449  
           14.3.2 Beispiel 451  
  Kapitel 15 452  
     Datum und Zeit 452  
        15.1 Elementare Zeitfunktionen - time 452  
        15.2 Komfortable Datumsfunktionen - datetime 461  
           15.2.1 Attribute und Datentypen (Übersicht) 461  
           15.2.2 date 462  
           15.2.3 datetime.time 467  
           15.2.4 datetime.datetime 469  
           15.2.5 datetime.timedelta 478  
  Kapitel 16 482  
     Schnittstelle zum Betriebssystem 482  
        16.1 Funktionen des Betriebssystems - os 482  
           16.1.1 Zugriff auf den eigenen Prozess und andere Prozesse 483  
           16.1.2 Zugriff auf das Dateisystem 485  
        16.2 Umgang mit Pfaden - os.path 491  
        16.3 Zugriff auf das Dateisystem - shutil 496  
           16.3.1 Verzeichnis- und Dateioperationen 498  
           16.3.2 Archivoperationen 500  
        16.4 Zugriff auf die Laufzeitumgebung - sys 502  
           16.4.1 Konstanten 504  
           16.4.2 Exceptions 507  
           16.4.3 Hooks 508  
           16.4.4 Sonstige Funktionen 510  
        16.5 Informationen über das System - platform 512  
        16.6 Kommandozeilenparameter - argparse 513  
           16.6.1 Taschenrechner - ein einfaches Beispiel 514  
           16.6.2 Komplexeres Beispiel 519  
        16.7 Kopieren von Instanzen - copy 520  
        16.8 Das Programmende - atexit 524  
  Kapitel 17 526  
     Parallele Programmierung 526  
        17.1 Prozesse, Multitasking und Threads 526  
        17.2 Die Thread-Unterstützung in Python 529  
        17.3 Das Modul _thread 529  
           17.3.1 Ein Beispiel für eine rechenintensive Funktion - die Approximation von Pi 529  
           17.3.2 Parallele Berechnung mithilfe von Threads 530  
           17.3.3 Datenaustausch zwischen Threads - locking 532  
        17.4 Das Modul threading 537  
           17.4.1 Locking im threading-Modul 540  
           17.4.2 Worker-Threads und Queues 543  
           17.4.3 Ereignisse definieren - threading.Event 547  
           17.4.4 Barrieren definieren - threading.Barrier 547  
           17.4.5 Eine Funktion zeitlich versetzt ausführen - threading.Timer 547  
  Kapitel 18 550  
     Datenspeicherung 550  
        18.1 Komprimierte Dateien lesen und schreiben - gzip 550  
        18.2 XML 552  
           18.2.1 DOM - Document Object Model 554  
           18.2.2 SAX - Simple API for XML 566  
           18.2.3 ElementTree 571  
        18.3 Datenbanken 576  
           18.3.1 Beispieldatenbank 578  
           18.3.2 Pythons eingebaute Datenbank - sqlite3 580  
        18.4 Serialisierung von Instanzen - pickle 596  
        18.5 Das Tabellenformat CSV - csv 600  
        18.6 Temporäre Dateien - tempfile 605  
  Kapitel 19 608  
     Netzwerkkommunikation 608  
        19.1 Socket API 610  
           19.1.1 Client-Server-Systeme 611  
           19.1.2 UDP 613  
           19.1.3 TCP 615  
           19.1.4 Blockierende und nicht-blockierende Sockets 617  
           19.1.5 Verwendung des Moduls 619  
           19.1.6 Die Socket-Klasse 622  
           19.1.7 Netzwerk-Byte-Order 626  
           19.1.8 Multiplexende Server - select 628  
           19.1.9 socketserver 631  
        19.2 URLs 635  
           19.2.1 Zugriff auf Ressourcen im Internet - urllib.request 635  
           19.2.2 Verarbeiten einer URL - urllib.parse 641  
        19.3 FTP - ftplib 647  
        19.4 E-Mail 656  
           19.4.1 SMTP - smtplib 656  
           19.4.2 POP3 - poplib 661  
           19.4.3 IMAP4 - imaplib 666  
           19.4.4 Erstellen komplexer E-Mails - email 672  
        19.5 Telnet - telnetlib 677  
        19.6 XML-RPC 681  
           19.6.1 Der Server 681  
           19.6.2 Der Client 686  
           19.6.3 Multicall 688  
           19.6.4 Einschränkungen 689  
  Kapitel 20 692  
     Debugging 692  
        20.1 Der Debugger 692  
        20.2 Inspizieren von Instanzen - inspect 695  
           20.2.1 Datentypen, Attribute und Methoden 697  
           20.2.2 Quellcode 698  
           20.2.3 Klassen und Funktionen 700  
        20.3 Formatierte Ausgabe von Instanzen - pprint 704  
        20.4 Logdateien - logging 707  
           20.4.1 Das Meldungsformat anpassen 710  
           20.4.2 Logging Handler 712  
        20.5 Automatisiertes Testen 714  
           20.5.1 Testfälle in Docstrings - doctest 714  
           20.5.2 Unit Tests - unittest 719  
        20.6 Traceback-Objekte - traceback 723  
        20.7 Analyse des Laufzeitverhaltens 727  
           20.7.1 Laufzeitmessung - timeit 728  
           20.7.2 Profiling - cProfile 731  
           20.7.3 Tracing - trace 735  
  Kapitel 21 740  
     Distribution von Python-Projekten 740  
        21.1 Erstellen von Distributionen - distutils 740  
           21.1.1 Schreiben des Moduls 741  
           21.1.2 Das Installationsscript 743  
           21.1.3 Erstellen einer Quellcodedistribution 747  
           21.1.4 Erstellen einer Binärdistribution 749  
           21.1.5 Distributionen installieren 750  
        21.2 Erstellen von EXE-Dateien - cx_Freeze 751  
  Kapitel 22 754  
     Optimierung 754  
        22.1 Die Optimize-Option 755  
        22.2 Mutable vs. immutable 755  
        22.3 Schleifen 756  
        22.4 Funktionsaufrufe 757  
        22.5 C 757  
        22.6 Lookup 758  
        22.7 Exceptions 758  
        22.8 Keyword Arguments 759  
  Kapitel 23 760  
     Grafische Benutzeroberflächen 760  
        23.1 Toolkits 760  
           23.1.1 Tkinter 761  
           23.1.2 PyGObject 761  
           23.1.3 PyQt 761  
           23.1.4 PySide 762  
           23.1.5 wxPython 762  
        23.2 Einführung in tkinter 763  
           23.2.1 Ein einfaches Beispiel 763  
           23.2.2 Steuerelementvariablen 765  
           23.2.3 Der Packer 768  
           23.2.4 Events 772  
           23.2.5 Die Steuerelemente 780  
           23.2.6 Die Klasse Tk 818  
           23.2.7 Weitere Module 819  
        23.3 Einführung in PyQt 827  
           23.3.1 Installation 827  
           23.3.2 Grundlegende Konzepte von Qt 828  
           23.3.3 Entwicklungsprozess 830  
        23.4 Signale und Slots 837  
        23.5 Wichtige Widgets 840  
           23.5.1 QCheckBox 841  
           23.5.2 QComboBox 842  
           23.5.3 QDateEdit, QTimeEdit, QDateTimeEdit 843  
           23.5.4 QDialog 844  
           23.5.5 QLineEdit 845  
           23.5.6 QListWidget, QListView 845  
           23.5.7 QProgressBar 846  
           23.5.8 QPushButton 847  
           23.5.9 QRadioButton 847  
           23.5.10 QSlider, QDial 848  
           23.5.11 QTextEdit 849  
           23.5.12 QWidget 849  
        23.6 Zeichenfunktionalität 851  
           23.6.1 Werkzeuge 852  
           23.6.2 Koordinatensystem 854  
           23.6.3 Einfache Formen 854  
           23.6.4 Grafiken 857  
           23.6.5 Text 858  
           23.6.6 Eye-Candy 860  
        23.7 Model-View-Architektur 864  
           23.7.1 Beispielprojekt: Ein Adressbuch 865  
           23.7.2 Auswählen von Einträgen 875  
           23.7.3 Bearbeiten von Einträgen 876  
  Kapitel 24 882  
     Wissenschaftliches Rechnen 882  
        24.1 Installation 883  
        24.2 Das Modellprogramm 884  
           24.2.1 Der Import von numpy, scipy und matplotlib 885  
           24.2.2 Vektorisierung und der Datentyp numpy.ndarray 886  
           24.2.3 Visualisieren von Daten mit matplotlib.pyplot 890  
        24.3 Überblicke über die Module numpy und scipy 892  
           24.3.1 Überblick über den Datentyp numpy.ndarray 892  
           24.3.2 Überblick über scipy 900  
  Kapitel 25 904  
     Anbindung an andere Programmiersprachen 904  
        25.1 Dynamisch ladbare Bibliotheken - ctypes 905  
           25.1.1 Ein einfaches Beispiel 905  
           25.1.2 Die eigene Bibliothek 906  
           25.1.3 Schnittstellenbeschreibung 910  
           25.1.4 Verwendung des Moduls 912  
        25.2 Schreiben von Extensions 915  
           25.2.1 Ein einfaches Beispiel 915  
           25.2.2 Exceptions 919  
           25.2.3 Erzeugen der Extension 920  
           25.2.4 Reference Counting 922  
        25.3 Python als eingebettete Scriptsprache 923  
           25.3.1 Ein einfaches Beispiel 923  
           25.3.2 Ein komplexeres Beispiel 925  
           25.3.3 Python-API-Referenz 928  
  Kapitel 26 934  
     Insiderwissen 934  
        26.1 URLs im Standardbrowser öffnen - webbrowser 934  
        26.2 Funktionsschnittstellen vereinfachen - functools 935  
           26.2.1 Funktionsschnittstellen vereinfachen 935  
           26.2.2 Caches 936  
           26.2.3 Ordnungsrelationen vervollständigen 938  
        26.3 Weitere Datentypen - collections 939  
           26.3.1 Zählen von Häufigkeiten 939  
           26.3.2 Dictionarys mit Standardwerten 942  
           26.3.3 Doppelt verkettete Listen 943  
           26.3.4 Benannte Tupel 945  
           26.3.5 Sortierte Dictionarys 946  
        26.4 Interpretieren von Binärdaten - struct 947  
        26.5 Versteckte Passworteingaben - getpass 950  
        26.6 Kommandozeilen-Interpreter - cmd 950  
        26.7 Dateiinterface für Strings - io.StringIO 953  
  Kapitel 27 956  
     Von Python 2 nach Python 3 956  
        27.1 Die wichtigsten Unterschiede 959  
           27.1.1 Ein-/Ausgabe 959  
           27.1.2 Iteratoren 960  
           27.1.3 Strings 961  
           27.1.4 Ganze Zahlen 962  
           27.1.5 Exception Handling 963  
           27.1.6 Standardbibliothek 963  
           27.1.7 Neue Sprachelemente in Python 3 964  
        27.2 Automatische Konvertierung 965  
        A.1 Reservierte Wörter 970  
        A.2 Built-in Functions 970  
  Index 974  

Kategorien

Service

Info/Kontakt