Log In
Or create an account ->
Imperial Library
Home
About
News
Upload
Forum
Help
Login/SignUp
Index
Titel
Impressum
Inhalt
Widmung
Der Autor
Die Fachgutachter
Danksagung
Teil 1 Grundlagen
1 Erste Schritte
Die Programmierumgebung einrichten
Python 2 und 3
Python-Codeausschnitte ausführen
Hello World!
Python auf verschiedenen Betriebssystemen
Python unter Linux
Python unter OS X
Python unter Windows
Fehlersuche
Python-Programme im Terminal ausführen
Unter Linux und OS X
Unter Windows
Zusammenfassung
2 Variablen und einfache Datentypen
Was bei der Ausführung von hello_world.py wirklich geschieht
Variablen
Variablen benennen und verwenden
Fehler bei Variablennamen vermeiden
Strings
Groß- und Kleinschreibung mithilfe von Methoden ändern
Strings verketten
Weißraum hinzufügen
Weißraum entfernen
Syntaxfehler bei der Stringverarbeitung vermeiden
Die Print-Anweisung in Python 2
Zahlen
Integer
Fließkommazahlen
Typisierungsfehler mithilfe der Funktion str() vermeiden
Integer in Python 2
Kommentare
Wie werden Kommentare geschrieben?
Was für Kommentare sind sinnvoll?
The Zen of Python
Zusammenfassung
3 Eine Einführung in Listen
Was sind Listen?
Elemente in einer Liste ansprechen
Indizes beginnen bei 0, nicht bei 1
Einzelne Werte aus einer Liste verwenden
Elemente ändern, hinzufügen und entfernen
Elemente in einer Liste ändern
Elemente zu einer Liste hinzufügen
Elemente aus einer Liste entfernen
Listen ordnen
Listen mit sort() dauerhaft sortieren
Listen mit der Funktion sorted() vorübergehend sortieren
Listen in umgekehrter Reihenfolge ausgeben
Die Länge einer Liste ermitteln
Indexfehler vermeiden
Zusammenfassung
4 Mit Listen arbeiten
Eine komplette Liste durchlaufen
Die Schleife im Detail
Weitere Aufgaben in einer for-Schleife erledigen
Aktionen nach der for-Schleife
Einrückungsfehler vermeiden
Vergessene Einrückung der ersten Zeile in einer Schleife
Vergessene Einrückung nachfolgender Zeilen
Unnötige Einrückung
Unnötige Einrückung nach einer Schleife
Vergessener Doppelpunkt
Numerische Listen
Die Funktion range()
Numerische Listen mithilfe von range() aufstellen
Einfache Statistiken für numerische Listen
Listennotation
Teillisten
Einen Slice erstellen
Einen Slice in einer Schleife durchlaufen
Listen kopieren
Tupel
Ein Tupel definieren
Die Werte in einem Tupel durchlaufen
Tupel überschreiben
Code formatieren
Die Gestaltungsrichtlinien
Einrückung
Zeilenlänge
Leerzeilen
Zusammenfassung
5 if-Anweisungen
Ein einfaches Beispiel
Bedingungen
Prüfung auf Gleichheit
Groß- und Kleinschreibung bei der Prüfung auf Gleichheit
Prüfung auf Ungleichheit
Numerische Vergleiche
Prüfung auf mehrere Bedingungen
Prüfung auf Vorhandensein eines Werts in einer Liste
Prüfung auf Abwesenheit eines Werts in einer Liste
Boolesche Ausdrücke
if-Anweisungen
Einfache if-Anweisungen
if-else-Anweisungen
Die if-elif-else-Kette
Mehrere elif-Blöcke
Den else-Block weglassen
Mehrere Bedingungen prüfen
if-Anweisungen für Listen
Prüfung auf besondere Elemente
Prüfung auf nicht leere Liste
Mehrere Listen verwenden
if-Anweisungen gestalten
Zusammenfassung
6 Dictionaries
Ein einfaches Dictionary
Umgang mit Dictionaries
Zugriff auf die Werte in einem Dictionary
Schlüssel-Wert-Paare hinzufügen
Ein leeres Dictionary als Ausgangspunkt
Werte in einem Dictionary ändern
Schlüssel-Wert-Paare entfernen
Ein Dictionary aus ähnlichen Objekten
Dictionaries in einer Schleife durchlaufen
Alle Schlüssel-Wert-Paare durchlaufen
Alle Schlüssel in einem Dictionary durchlaufen
Die Schlüssel in einem Dictionary geordnet durchlaufen
Alle Werte in einem Dictionary durchlaufen
Verschachtelung
Dictionaries in einer Liste
Listen in einem Dictionary
Dictionaries in einem Dictionary
Zusammenfassung
7 Benutzereingaben und while-Schleifen
Die Funktion input()
Klar verständliche Eingabeaufforderungen schreiben
Verwendung von int() für numerische Eingaben
Der Modulo-Operator
Benutzereingaben in Python 2.7
while-Schleifen
while-Schleifen in Aktion
Programmbeendigung durch den Benutzer
Flags
Eine Schleife mit break verlassen
Die Anweisung continue
Endlosschleifen vermeiden
while-Schleifen für Listen und Dictionaries
Elemente von einer Liste in eine andere verschieben
Alle Vorkommen eines Wertes aus einer Liste entfernen
Ein Dictionary mit Benutzereingaben füllen
Zusammenfassung
8 Funktionen
Funktionen definieren
Informationen an eine Funktion übergeben
Argumente und Parameter
Argumente übergeben
Positionsabhängige Argumente
Schlüsselwortargumente
Standardwerte
Gleichwertige Funktionsaufrufe
Argumentfehler vermeiden
Rückgabewerte
Einen einfachen Wert zurückgeben
Optionale Argumente
Ein Dictionary zurückgeben
Funktionen in einer while-Schleife
Eine Liste übergeben
Eine Liste mithilfe einer Funktion ändern
Die Änderung einer Liste in einer Funktion verhindern
Beliebig viele Argumente übergeben
Positionsabhängige Argumente und Argumente beliebiger Anzahl kombinieren
Beliebig viele Schlüsselwortargumente übergeben
Funktionen in Modulen speichern
Ein komplettes Modul importieren
Einzelne Funktionen importieren
Eine Funktion mit »as« umbenennen
Ein Modul mit »as« umbenennen
Alle Funktionen eines Moduls importieren
Funktionen formatieren
Zusammenfassung
9 Klassen
Eine Klasse erstellen und verwenden
Die Klasse Dog erstellen
Eine Instanz einer Klasse anlegen
Mit Klassen und Instanzen arbeiten
Die Klasse Car
Einen Standardwert für ein Attribut festlegen
Attributwerte bearbeiten
Vererbung
Die Methode __init__() für eine Kindklasse
Vererbung in Python 2.7
Attribute und Methoden der Kindklasse definieren
Methoden der Elternklasse überschreiben
Instanzen als Attribute
Reale Objekte modellieren
Klassen importieren
Eine einzelne Klasse importieren
Mehrere Klassen in einem Modul speichern
Mehrere Klassen aus einem Modul importieren
Ein gesamtes Modul importieren
Alle Klassen eines Moduls importieren
Ein Modul in ein Modul importieren
Ihren eigenen Arbeitsablauf finden
Die Standardbibliothek von Python
Klassen formatieren
Zusammenfassung
10 Dateien und Ausnahmen
Aus Dateien lesen
Eine gesamte Datei lesen
Dateipfade
Zeilenweises Lesen
Eine Liste aus den Zeilen einer Datei erstellen
Dateiinhalte verarbeiten
Große Dateien: eine Million Stellen
Ist Ihr Geburtsdatum in Pi enthalten?
In Dateien schreiben
In eine leere Datei schreiben
Mehrere Zeilen schreiben
Text an eine Datei anhängen
Ausnahmen
Division durch null
try-except-Blöcke
Abstürze mithilfe von Ausnahmen verhindern
Der else-Block
Datei nicht gefunden
Text analysieren
Umgang mit mehreren Dateien
Fehler stillschweigend übergehen
Welche Fehler sollten Sie melden und welche nicht?
Daten speichern
json.dump() und json.load()
Benutzergenerierte Daten speichern und lesen
Refactoring
Zusammenfassung
11 Code testen
Funktionen testen
Unit Tests und Testfälle
Ein bestandener Test
Ein nicht bestandener Test
Was tun bei einem nicht bestandenen Test?
Neue Tests hinzufügen
Klassen testen
Verschiedene Zusicherungsmethoden
Eine Beispielklasse zum Testen
Die Klasse AnonymousSurvey testen
Die Methode setUp()
Zusammenfassung
Teil 2 Projekte
Alien Invasion – ein Python-Spiel
Datenvisualisierung
Webanwendungen
Projekt 1: Alien Invasion
12 Das eigene Kampfschiff
Das Projekt planen
Pygame installieren
Python-Pakete mit pip installieren
Pygame unter Linux installieren
Pygame unter OS X installieren
Pygame unter Windows installieren
Das Spielprojekt beginnen
Ein Pygame-Fenster anlegen und auf Benutzereingaben reagieren
Die Hintergrundfarbe festlegen
Eine Klasse für Einstellungen anlegen
Das Bild eines Raumschiffs hinzufügen
Die Klasse Ship
Das Schiff auf den Bildschirm zeichnen
Refactoring des Moduls game_functions
Die Funktion check_events()
Die Funktion update_screen()
Das Schiff bewegen
Auf Tastenbetätigungen reagieren
Kontinuierliche Bewegung
Bewegung nach rechts und links
Die Geschwindigkeit des Schiffes anpassen
Den Bewegungsbereich des Schiffes einschränken
Refactoring von check_events()
Zwischenstand
alien_invasion.py
settings.py
game_functions.py
ship.py
Geschosse
Einstellungen für Geschosse hinzufügen
Die Klasse Bullet
Geschosse in Gruppen speichern
Geschosse abfeuern
Alte Geschosse löschen
Die Anzahl der Geschosse begrenzen
Die Funktion update_bullets()
Die Funktion fire_bullet()
Zusammenfassung
13 Die Außerirdischen
Überblick über das Projekt
Das erste Invasionsschiff
Die Klasse Alien
Eine Instanz von Alien erstellen
Das Invasionsschiff auf den Bildschirm zeichnen
Die Invasionsflotte erstellen
Wie viele Invasionsschiffe passen in eine Reihe?
Reihen von Invasionsschiffen erstellen
Die Flotte erstellen
Refactoring von create_fleet()
Reihen hinzufügen
Die Flotte in Bewegung setzen
Die Invasoren nach rechts bewegen
Einstellungen für die Flugrichtung der Flotte
Auf Randberührungen prüfen
Sinken und Flugrichtung ändern
Invasoren abschießen
Kollisionen von Geschossen erkennen
Größere Geschosse zu Testzwecken
Die Flotte auffüllen
Die Geschosse beschleunigen
Refactoring von update_bullets()
Spielende
Kollisionen zwischen Invasoren und dem eigenen Schiff erkennen
Auf Kollisionen zwischen Invasoren und dem eigenen Schiff reagieren
Wenn Invasoren den unteren Bildschirmrand erreichen
Game over!
Welche Teile des Spiels müssen ausgeführt werden?
Zusammenfassung
14 Das Wertungssystem
Eine Play-Schaltfläche hinzufügen
Die Klasse Button
Die Schaltfläche auf den Bildschirm zeichnen
Das Spiel starten
Das Spiel zurücksetzen
Die Play-Schaltfläche deaktivieren
Den Mauszeiger ausblenden
Levels
Die Geschwindigkeitseinstellungen ändern
Die Geschwindigkeit zurücksetzen
Die Punktwertung
Den Punktestand anzeigen
Eine Anzeigetafel erstellen
Den Punktestand bei jedem Abschuss erhöhen
Alle Treffer berücksichtigen
Den Punktwert erhöhen
Den Punktestand runden
Highscore
Das Level anzeigen
Die Anzahl der verfügbaren Schiffe anzeigen
Zusammenfassung
Projekt 2: Datenvisualisierung
15 Daten generieren
Die Bibliothek matplotlib installieren
Unter Linux
Unter OS X
Unter Windows
matplotlib testen
Die matplotlib-Galerie
Einfache Liniendiagramme
Beschriftung und Linienstärke ändern
Das Diagramm korrigieren
Einzelne Punkte mit scatter() darstellen und gestalten
Eine Folge von Punkten mit scatter() ausgeben
Daten automatisch berechnen
Die Umrandungen der Punkte entfernen
Eigene Farben festlegen
Eine Colormap verwenden
Diagramme automatisch speichern
Zufallsbewegungen
Die Klasse RandomWalk()
Richtungen wählen
Den Zufallspfad als Diagramm ausgeben
Mehrere Zufallspfade erstellen
Den Pfad gestalten
Die Punkte färben
Start- und Endpunkte anzeigen
Die Achsen entfernen
Datenpunkte hinzufügen
Die Größe an den Bildschirm anpassen
Würfeln mit Pygal
Pygal installieren
Die Pygal-Galerie
Die Klasse Die
Würfeln
Die Ergebnisse analysieren
Ein Histogramm erstellen
Ergebnisse bei zwei Würfeln
Würfel unterschiedlicher Flächenzahl
Zusammenfassung
16 Daten herunterladen
Das Dateiformat CSV
CSV-Spaltenköpfe analysieren
Die Spaltenköpfe und ihre Position ausgeben
Daten entnehmen und lesen
Daten in einem Temperaturdiagramm darstellen
Das Modul datetime
Datumsangaben im Diagramm darstellen
Ein Diagramm für einen längeren Zeitraum
Eine zweite Datenreihe darstellen
Einen Diagrammbereich einfärben
Fehlerprüfung
Globale Daten im JSON-Format visualisieren
Daten zur Weltbevölkerung herunterladen
Relevante Daten entnehmen
Strings in numerische Werte umwandeln
Zweistellige Ländercodes ermitteln
Eine Weltkarte zeichnen
Numerische Daten auf einer Weltkarte darstellen
Eine vollständige Karte der Weltbevölkerung
Länder nach der Bevölkerungszahl gruppieren
Weltkarten in Pygal gestalten
Die Farbpalette aufhellen
Zusammenfassung
17 APIs
Web-APIs
Git und GitHub
Daten über einen API-Aufruf anfordern
Das Paket requests installieren
API-Antworten verarbeiten
Das Antwort-Dictionary verarbeiten
Ein Überblick über die höchstbewerteten Repositories
Grenzwerte für die API-Aufrufrate
Repositories mit Pygal visualisieren
Pygal-Diagramme verbessern
Eigene Tooltips hinzufügen
Die Beschreibungen als Tooltips ausgeben
Aktive Links zu dem Diagramm hinzufügen
Die API von Hacker News
Zusammenfassung
Projekt 3: Webanwendungen
18 Erste Schritte mit Django
Ein Projekt einrichten
Eine Spezifikation schreiben
Eine virtuelle Umgebung erstellen
Das Paket virtualenv installieren
Die virtuelle Umgebung aktivieren
Django installieren
Ein Projekt in Django erstellen
Die Datenbank erstellen
Das Projekt anzeigen
Eine App anlegen
Modelle definieren
Modelle aktivieren
Die Admin-Site von Django
Das Modell für die Einträge definieren
Das Modell Entry in die Datenbank aufnehmen
Das Modell Entry auf der Admin-Site registrieren
Die Django-Shell
Seiten erstellen: die Startseite von Learning Log
Eine URL zuordnen
Eine Ansicht schreiben
Eine Vorlage schreiben
Weitere Seiten erstellen
Vererbung bei Vorlagen
Die Seite Topics
Einzelne Fachgebietsseiten
Die Vorlage für eine Fachgebietsseite
Zusammenfassung
19 Benutzerkonten
Dateneingabe durch die Benutzer
Neue Fachgebiete hinzufügen
Neue Einträge hinzufügen
Einträge bearbeiten
Benutzerkonten einrichten
Die App users
Die Anmeldeseite
Abmelden
Die Registrierungsseite
Die Benutzer als Besitzer ihrer eigenen Daten
Den Zugriff mit @login_required beschränken
Daten mit Benutzern verknüpfen
Den Zugriff auf die Fachgebiete auf die zuständigen Benutzer einschränken
Die Fachgebiete eines Benutzers schützen
Die Seite edit_entry schützen
Neue Fachgebiete dem aktuellen Benutzer zuordnen
Zusammenfassung
20 Eine App gestalten und bereitstellen
Learning Log gestalten
Die App django-bootstrap3
Learning Log mit Bootstrap gestalten
Änderungen an base.html
Die Startseite mit einem Jumbotron gestalten
Das Anmeldeformular gestalten
Die Seite new_topic gestalten
Die Seite Topics gestalten
Einträge auf den Fachgebietsseiten gestalten
Learning Log bereitstellen
Ein Heroku-Konto anlegen
Heroku Toolbelt installieren
Die erforderlichen Pakete installieren
Eine Paketliste mit der Datei requirements.txt erstellen
Die Python-Laufzeitversion angeben
Die Datei settings.py für Heroku anpassen
Ein Procfile zum Starten der Prozesse erstellen
Die Datei wsgi.py für Heroku anpassen
Ein Verzeichnis für statische Dateien erstellen
Den Server gunicorn lokal nutzen
Mit Git den Überblick über die Projektdateien bewahren
Die Datenbank auf Heroku einrichten
Die Heroku-Bereitstellung verbessern
Das Onlineprojekt schützen
Änderungen mit Commit bestätigen und übertragen
Eigene Fehlerseiten erstellen
Weiterentwicklung des Projekts
Die Einstellung SECRET_KEY
Projekte auf Heroku löschen
Zusammenfassung
Nachwort
Anhang
A Python installieren
Python unter Linux
Die installierte Version herausfinden
Python 3 unter Linux installieren
Python unter OS X
Die installierte Version herausfinden
Python 3 mit Homebrew installieren
Python unter Windows
Python 3 unter Windows installieren
Den Python-Interpreter finden
Python zur Pfadvariablen hinzufügen
Schlüsselwörter und integrierte Funktionen
Python-Schlüsselwörter
Integrierte Python-Funktionen
B Texteditoren
Geany
Geany unter Linux installieren
Geany unter Windows installieren
Python-Programme in Geany ausführen
Geany-Einstellungen anpassen
Sublime Text
Sublime Text unter OS X installieren
Sublime Text unter Linux installieren
Sublime Text unter Windows installieren
Python-Programme in Sublime Text ausführen
Sublime Text konfigurieren
Die Einstellungen von Sublime Text anpassen
IDLE
IDLE unter Linux installieren
IDLE unter OS X installieren
IDLE unter Windows installieren
IDLE-Einstellungen anpassen
Emacs und vim
C Hilfe finden
Erste Schritte
Versuchen Sie es erneut
Legen Sie eine Pause ein
Nutzen Sie das Onlinematerial zu diesem Buch
Online nach Hilfe suchen
Stack Overflow
Die offizielle Python-Dokumentation
Offizielle Dokumentation der Bibliotheken
r/learnpython
Blogs
IRC (Internet Relay Chat)
Ein IRC-Konto anlegen
Hilfreiche Kanäle
IRC-Kultur
D Versionssteuerung mit Git
Git installieren
Git unter Linux installieren
Git unter OS X installieren
Git unter Windows installieren
Git konfigurieren
Ein Projekt anlegen
Dateien ignorieren
Ein Repository initialisieren
Den Projektstatus überprüfen
Dateien zum Repository hinzufügen
Einen Commit durchführen
Das Protokoll einsehen
Der zweite Commit
Änderungen zurücknehmen
Vorherige Commits auschecken
Das Repository löschen
Stichwortverzeichnis
← Prev
Back
Next →
← Prev
Back
Next →