Log In
Or create an account ->
Imperial Library
Home
About
News
Upload
Forum
Help
Login/SignUp
Index
Aus dem Lektorat
Inhaltsverzeichnis
Materialien zum Buch
1 Einführung
1.1 Vorteile von Python
1.2 Verbreitung von Python
1.3 Aufbau des Buchs
1.4 Übungen
1.5 Installation unter Windows
1.6 Installation unter Ubuntu Linux
1.7 Installation unter macOS
2 Erste Schritte
2.1 Python als Taschenrechner
2.1.1 Eingabe von Berechnungen
2.1.2 Addition, Subtraktion und Multiplikation
2.1.3 Division, Ganzzahldivision und Modulo
2.1.4 Rangfolge und Klammern
2.1.5 Übungsaufgabe
2.1.6 Variablen und Zuweisung
2.1.7 Übungsaufgabe
2.2 Erstes Programm
2.2.1 Hallo Welt
2.2.2 Eingabe eines Programms
2.3 Speichern und ausführen
2.3.1 Speichern
2.3.2 Ausführen unter Windows
2.3.3 Ausführen unter Ubuntu Linux und unter macOS
2.3.4 Kommentare
2.3.5 Verkettung von Ausgaben
2.3.6 Lange Ausgaben
3 Programmierkurs
3.1 Ein Spiel programmieren
3.2 Variablen und Operatoren
3.2.1 Zuweisung, Berechnung und Ausgabe
3.2.2 String-Literale
3.2.3 Eingabe einer Zeichenkette
3.2.4 Eingabe einer Zahl
3.2.5 Spiel, Version mit Eingabe
3.2.6 Übungsaufgaben
3.2.7 Zufallszahlen
3.2.8 Typ ermitteln
3.3 Verzweigungen
3.3.1 Vergleichsoperatoren
3.3.2 Verzweigung mit »if«
3.3.3 Spiel, Version mit Bewertung der Eingabe
3.3.4 Übungsaufgabe
3.3.5 Mehrfache Verzweigung
3.3.6 Übungsaufgabe
3.3.7 Bedingter Ausdruck
3.3.8 Logische Operatoren
3.3.9 Übungsaufgaben
3.3.10 Mehrere Vergleichsoperatoren
3.3.11 Spiel, Version mit genauer Bewertung der Eingabe
3.3.12 Verzweigung mit »match«
3.3.13 Rangfolge der Operatoren
3.4 Schleifen
3.4.1 Schleife mit »for«
3.4.2 Schleifenabbruch mit »break«
3.4.3 Schleifenfortsetzung mit »continue«
3.4.4 Geschachtelte Kontrollstrukturen
3.4.5 Spiel, Version mit »for«-Schleife und Abbruch
3.4.6 Schleife mit »for« und »range()«
3.4.7 Übungsaufgaben
3.4.8 Spiel, Version mit »range()«
3.4.9 Schleife mit »while«
3.4.10 Spiel, Version mit »while«-Schleife und Zähler
3.4.11 Übungsaufgabe
3.4.12 Kombinierte Zuweisungsausdrücke
3.5 Entwicklung eines Programms
3.6 Fehler und Ausnahmen
3.6.1 Basisprogramm
3.6.2 Fehler abfangen
3.6.3 Fehlermeldung ausgeben
3.6.4 Eingabe wiederholen
3.6.5 Übungsaufgabe
3.6.6 Spiel, Version mit Ausnahmebehandlung
3.7 Funktionen und Module
3.7.1 Einfache Funktionen
3.7.2 Funktionen mit einem Parameter
3.7.3 Übungsaufgabe
3.7.4 Funktionen mit mehreren Parametern
3.7.5 Funktionen mit Rückgabewert
3.7.6 Spiel, Version mit Funktionen
3.7.7 Übungsaufgaben
3.8 Typhinweise
3.8.1 Variablen und Typprüfungen
3.8.2 Funktionen und Typprüfungen
3.9 Das fertige Spiel
4 Datentypen
4.1 Zahlen
4.1.1 Ganze Zahlen
4.1.2 Zahlen mit Nachkommastellen
4.1.3 Exponentialoperator **
4.1.4 Rundung und Konvertierung
4.1.5 Winkelfunktionen
4.1.6 Weitere mathematische Funktionen
4.1.7 Genauere Zahlen mit Nachkommastellen
4.1.8 Komplexe Zahlen
4.1.9 Bitoperatoren
4.1.10 Brüche
4.2 Zeichenketten
4.2.1 Eigenschaften
4.2.2 Operatoren
4.2.3 Slices
4.2.4 Änderbarkeit
4.2.5 Suchen und Ersetzen
4.2.6 Leerzeichen entfernen
4.2.7 Text zerlegen
4.2.8 Konstanten
4.2.9 Datentyp »bytes«
4.3 Listen
4.3.1 Eigenschaften und Operatoren
4.3.2 Mehrdimensionale Listen
4.3.3 Änderbarkeit
4.3.4 Methoden
4.3.5 List Comprehension
4.4 Tupel
4.5 Dictionarys
4.5.1 Eigenschaften, Operatoren und Methoden
4.5.2 Dynamische Views
4.6 Sets, Mengen
4.6.1 Eigenschaften, Operatoren und Methoden
4.6.2 Mengenlehre
4.7 Wahrheitswerte und Nichts
4.7.1 Wahrheitswerte »True« und »False«
4.7.2 Nichts, »None«
4.8 Referenz, Identität und Kopie
4.8.1 Referenz und Identität
4.8.2 Ressourcen sparen
4.8.3 Objekte kopieren
4.9 Typhinweise
4.9.1 Sequenz als Parameter
4.9.2 Einschränkung auf Liste
5 Weiterführende Programmierung
5.1 Allgemeines
5.1.1 Kombinierte Zuweisungsoperatoren
5.1.2 Anweisung in mehreren Zeilen
5.1.3 Eingabe mit Hilfestellung
5.1.4 Anweisung »pass«
5.2 Ausgabe und Formatierung
5.2.1 Funktion »print()«
5.2.2 Formatierung von Zahlen mit Nachkommastellen
5.2.3 Formatierung von ganzen Zahlen
5.2.4 Formatierung von Zeichenketten
5.2.5 Übungsaufgabe
5.3 Funktionen für Iterables
5.3.1 Funktion »zip()«
5.3.2 Funktion »map()«
5.3.3 Funktion »filter()«
5.4 Verschlüsselung
5.5 Fehler und Ausnahmen
5.5.1 Allgemeines
5.5.2 Syntaxfehler
5.5.3 Laufzeitfehler
5.5.4 Logische Fehler und Debugging
5.5.5 Fehler erzeugen
5.5.6 Unterscheidung von Ausnahmen
5.6 Funktionen
5.6.1 Variable Anzahl von Parametern
5.6.2 Benannte Parameter
5.6.3 Optionale Parameter
5.6.4 Mehrere Rückgabewerte
5.6.5 Übergabe von Kopien und Referenzen
5.6.6 Namensräume
5.6.7 Rekursive Funktionen
5.6.8 Lambda-Funktionen
5.6.9 Funktion als Parameter
5.7 Eingebaute Funktionen
5.7.1 Funktionen »max()«, »min()« und »sum()«
5.7.2 Funktionen »chr()« und »ord()«
5.7.3 Funktionen »reversed()« und »sorted()«
5.8 Weitere mathematische Module
5.8.1 Funktionsgraphen zeichnen
5.8.2 Mehrere Teilzeichnungen
5.8.3 Eindimensionale Arrays und Vektoren
5.8.4 Mehrdimensionale Arrays und Matrizen
5.8.5 Signalverarbeitung
5.8.6 Statistikfunktionen
5.9 Eigene Module
5.9.1 Eigene Module erzeugen
5.9.2 Standardimport eines Moduls
5.9.3 Import eines Moduls mit Umbenennung
5.9.4 Import von Funktionen
5.9.5 Übungsaufgabe
5.10 Parameter der Kommandozeile
5.11 Programm »Bruchtraining«
5.11.1 Der Ablauf des Programms
5.11.2 Hauptprogramm
5.11.3 Eine leichte Aufgabe
5.11.4 Eine mittelschwere Aufgabe
5.11.5 Eine schwere Aufgabe
6 Objektorientierte Programmierung
6.1 Grundlagen
6.1.1 Was ist OOP?
6.1.2 Klassen, Objekte und eigene Methoden
6.1.3 Besondere Member
6.1.4 Übungsaufgabe
6.1.5 Operatormethoden
6.1.6 Referenz, Identität und Kopie
6.1.7 Verkettung
6.1.8 Verschachtelung
6.1.9 Übungsaufgaben
6.2 Fortgeschrittene Themen
6.2.1 Vererbung
6.2.2 Übungsaufgabe
6.2.3 Mehrfachvererbung
6.2.4 Datenklassen
6.2.5 Enumerationen
6.2.6 Spiel, objektorientierte Version
7 Verschiedene Module
7.1 Datum und Uhrzeit
7.1.1 Modul »time«
7.1.2 Programm anhalten
7.1.3 Klasse »timedelta«
7.1.4 Klasse »datetime«
7.1.5 Klasse »calendar«
7.1.6 Spiel, Version mit Zeitmessung
7.1.7 Spiel, objektorientierte Version mit Zeitmessung
7.2 Warteschlangen
7.2.1 Klasse »SimpleQueue«
7.2.2 Klasse »LifoQueue«
7.2.3 Klasse »PriorityQueue«
7.2.4 Klasse »deque«
7.3 Multithreading
7.3.1 Wozu dient Multithreading?
7.3.2 Erzeugung eines Threads
7.3.3 Identifizierung eines Threads
7.3.4 Gemeinsame Daten und Objekte
7.3.5 Threads und Exceptions
7.4 Reguläre Ausdrücke
7.4.1 Suchen von Teiltexten
7.4.2 Ersetzen von Teiltexten
7.5 Audioausgabe
8 Dateien
8.1 Das Öffnen und das Schließen einer Datei
8.2 Textdateien
8.2.1 Schreiben einer Textdatei
8.2.2 Lesen einer Textdatei
8.2.3 CSV-Datei schreiben
8.2.4 CSV-Datei lesen
8.3 Dateien mit festgelegter Struktur
8.3.1 Formatiertes Schreiben
8.3.2 Lesen an beliebiger Stelle
8.3.3 Schreiben an beliebiger Stelle
8.4 Serialisierung mit »pickle«
8.4.1 Objekte in Datei schreiben
8.4.2 Objekte aus Datei lesen
8.5 Datenaustausch mit JSON
8.5.1 Objekte in Datei schreiben
8.5.2 Objekte aus Datei lesen
8.6 Bearbeitung mehrerer Dateien
8.6.1 Funktion »glob.glob()«
8.6.2 Funktion »os.scandir()«
8.7 Informationen über Dateien
8.8 Dateien und Verzeichnisse verwalten
8.9 Beispielprojekt Morsezeichen
8.9.1 Morsezeichen aus Datei lesen
8.9.2 Ausgabe auf dem Bildschirm
8.9.3 Ausgabe mit Tonsignalen
8.10 Spiel, Version mit Highscore-Datei
8.10.1 Eingabebeispiel
8.10.2 Aufbau des Programms
8.10.3 Code des Programms
8.11 Spiel, objektorientierte Version mit Highscore-Datei
9 Datenbanken
9.1 Aufbau von Datenbanken
9.2 SQLite
9.2.1 Datenbank, Tabelle und Datensätze
9.2.2 Daten anzeigen
9.2.3 Daten auswählen, Operatoren
9.2.4 Operator »LIKE«
9.2.5 Sortierung der Ausgabe
9.2.6 Auswahl nach Eingabe
9.2.7 Datensätze ändern
9.2.8 Datensätze löschen
9.2.9 Übungsaufgabe
9.3 MySQL
9.3.1 XAMPP und Connector/Python
9.3.2 Datenbank, Tabelle und Datensätze
9.3.3 Daten anzeigen
9.4 Spiel, Version mit Highscore-Datenbank
9.5 Spiel, objektorientierte Version mit Highscore-Datenbank
10 Benutzeroberflächen
10.1 Einführung
10.1.1 Erstes GUI-Programm
10.1.2 Einrichtung und Anordnung
10.1.3 Ereignismethoden für mehrere Widgets
10.2 Widget-Typen
10.2.1 Einzeiliges Eingabefeld
10.2.2 Versteckte Eingabe, Widget deaktivieren
10.2.3 Mehrzeiliges Eingabefeld
10.2.4 Listbox mit einfacher Auswahl
10.2.5 Listbox mit mehrfacher Auswahl
10.2.6 Spinbox
10.2.7 Radiobutton, Widget-Variable
10.2.8 Checkbutton
10.2.9 Schieberegler, Scale
10.3 Bilder und Mausereignisse
10.3.1 Bild einbetten und ändern
10.3.2 Mausereignisse
10.4 Geometrie-Manager »place«
10.4.1 Fenstergröße und absolute Position
10.4.2 Relative Position
10.4.3 Position ändern
10.5 Menüs und Dialogfelder
10.5.1 Menüleisten
10.5.2 Kontextmenüs
10.5.3 Standard-Dialogfelder
10.5.4 Eigene Dialogfelder
10.6 Zeichnungen und Animationen
10.6.1 Verschiedene Zeichnungsobjekte
10.6.2 Zeichnungsobjekte steuern
10.6.3 Zeichnungsobjekte animieren
10.6.4 Kollision von Zeichnungsobjekten
10.7 Spiel, GUI-Version
10.8 Übungsaufgabe
11 Benutzeroberflächen mit PyQt
11.1 Einführung
11.1.1 Erstes GUI-Programm
11.1.2 Einrichtung und Anordnung
11.1.3 Größe des Anwendungsfensters
11.1.4 Ereignismethoden für mehrere Widgets
11.2 Widget-Typen
11.2.1 Einzeiliges Eingabefeld
11.2.2 Versteckte Eingabe, Deaktivieren von Widgets
11.2.3 Mehrzeiliges Eingabefeld
11.2.4 Liste mit einfacher Auswahl
11.2.5 Liste mit mehrfacher Auswahl
11.2.6 Combobox
11.2.7 Spinbox
11.2.8 Radiobutton
11.2.9 Mehrere Gruppen von Radiobuttons
11.2.10 Checkbox
11.2.11 Slider
11.2.12 Bilder, Formate und Hyperlinks
11.2.13 Standard-Dialogfelder
11.3 PyQt und SQLite
11.3.1 Die Oberfläche der Anwendung
11.3.2 Widgets der linken Spalte
11.3.3 Widgets der mittleren Spalte
11.3.4 Widgets der rechten Spalte
11.3.5 Ein List-Widget und eine Python-Liste
11.3.6 Datenbankdatei und Fenster
11.3.7 Drei Hilfsmethoden
11.3.8 Anzeige im List-Widget
11.3.9 Auswahl in List-Widget
11.3.10 Einfügen eines neuen Datensatzes
11.3.11 Ändern eines Datensatzes
11.3.12 Löschen eines Datensatzes
11.3.13 Suchen nach einem Namen
11.3.14 Hauptprogramm
11.4 Übungsaufgabe
A Anhang
A.1 Installation zusätzlicher Module
A.1.1 Installation unter Windows
A.1.2 Installation unter Ubuntu Linux
A.1.3 Installation unter macOS
A.2 Erstellen von ausführbaren Dateien
A.3 Installation von XAMPP
A.3.1 Installation von XAMPP unter Windows
A.3.2 Installation von XAMPP unter Ubuntu Linux
A.3.3 Installation von XAMPP unter macOS
A.4 UNIX-Befehle
A.4.1 Inhalt eines Verzeichnisses
A.4.2 Verzeichnis anlegen, wechseln und löschen
A.4.3 Datei kopieren, verschieben und löschen
A.5 Tipps zur Entwicklung
A.5.1 Übung »u_sqlite_vokabeln«
A.5.2 Übung »u_gui_vokabeln«
A.5.3 Übung »u_pyqt_vokabeln«
Stichwortverzeichnis
Rechtliche Hinweise
Über den Autor
← Prev
Back
Next →
← Prev
Back
Next →