<p>Über den Autor 11</p> <p><b>Einleitung 23</b></p> <p>Über dieses Buch 23</p> <p>Törichte Annahmen über den Leser 24</p> <p>Symbole in diesem Buch 25</p> <p>Über das Buch hinaus 25</p> <p>Wie geht es weiter? 25</p> <p><b>TEIL I ERSTE SCHRITTE MIT PYTHON 27</b></p> <p><b>Kapitel 1 Die Kommunikation mit Ihrem Computer 29 </b></p> <p>Warum wollen Sie sich mit Ihrem Computer unterhalten? 30</p> <p>Anwendungen als eine Art von Kommunikation 31</p> <p>Alltägliche Arbeitsabläufe 31</p> <p>Arbeitsabläufe aufschreiben 32</p> <p>Anwendungen als gewöhnliche Arbeitsabläufe verstehen 33</p> <p>Computer nehmen alles wörtlich 33</p> <p>Was sind Anwendungen eigentlich? 33</p> <p>Computer besitzen ihre eigene Sprache 34</p> <p>Den Menschen helfen, sich mit dem Computer zu verständigen 34</p> <p>Warum Python so cool ist 36</p> <p>Warum man Python verwenden sollte 36</p> <p>Wie Sie persönlich von Python profitieren können 37</p> <p>Welche Organisationen verwenden Python? 39</p> <p>Nützliche Python-Programme finden 39</p> <p>Python mit anderen Sprachen vergleichen 40</p> <p><b>Kapitel 2 Installieren Sie sich Ihr eigenes Python 43</b></p> <p>Die benötigte Version herunterladen 43</p> <p>Python installieren 46</p> <p>Mit Windows arbeiten 47</p> <p>Mit dem Mac arbeiten 49</p> <p>Mit Linux arbeiten 51</p> <p>Auf Python auf Ihrem System zugreifen 55</p> <p>Mit Windows arbeiten 56</p> <p>Mit dem Mac 58</p> <p>Mit Linux arbeiten 59</p> <p>Ihre Installation testen 60</p> <p><b>Kapitel 3 Mit Python arbeiten 63</b></p> <p>Python über die Kommandozeile starten 63</p> <p>Python starten 64</p> <p>Die Kommandozeile nutzbringend einsetzen 65</p> <p>Python-Umgebungsvariablen sinnvoll einsetzen 68</p> <p>Einzelne Befehle eingeben 69</p> <p>Dem Computer sagen, was er machen soll 70</p> <p>Dem Computer mitteilen, dass Sie fertig sind 70</p> <p>Ergebnisse anzeigen 70</p> <p>Die Hilfe verwenden 71</p> <p>In den Hilfemodus wechseln 73</p> <p>Um Hilfe bitten 74</p> <p>Den Hilfemodus verlassen 77</p> <p>Sich unmittelbar Hilfe holen 77</p> <p>Die Python-Kommandozeile schließen 79</p> <p><b>Kapitel 4 Ihre erste Anwendung 83</b></p> <p>Warum IDEs derart wichtig sind 84</p> <p>Besseren Code erstellen 84</p> <p>Debugging-Funktionalität 84</p> <p>Warum Notebooks nützlich sind 85</p> <p>So erhalten Sie Ihre Anaconda-Kopie 86</p> <p>Analytics Anaconda herunterladen 86</p> <p>Anaconda unter Linux installieren 87</p> <p>Anaconda unter MacOS installieren 88</p> <p>Anaconda unter Windows installieren 89</p> <p>Datensätze und Beispielcode herunterladen 93</p> <p>Jupyter Notebook nutzen 93</p> <p>Das Code-Repositorium definieren 96</p> <p>Eine Anwendung erstellen 101</p> <p>Zellen verstehen 101</p> <p>Dokumentationszellen hinzufügen 102</p> <p>Weitere Zellinhalte 103</p> <p>Einrückungen verstehen 104</p> <p>Kommentare einfügen 106</p> <p>Kommentare verstehen 106</p> <p>Kommentare als Erinnerungsstützen verwenden 107</p> <p>Mit Kommentaren die Ausführung von Code verhindern 108</p> <p>Jupyter Notebook schließen 108</p> <p><b>Kapitel 5 Mit Anaconda arbeiten 111</b></p> <p>Ihren Code herunterladen 112</p> <p>Mit Checkpoints arbeiten 113</p> <p>Checkpoints nutzen 113</p> <p>Einen Checkpoint speichern 114</p> <p>Einen Checkpoint wiederherstellen 115</p> <p>Zellen bearbeiten 115</p> <p>Verschiedene Zelltypen hinzufügen 115</p> <p>Zellen teilen und verbinden 116</p> <p>Zellen verschieben 116</p> <p>Zellen ausführen 117</p> <p>Ausgabe umschalten 117</p> <p>Das Aussehen von Jupyter Notebook ändern 118</p> <p>Befehle über die Befehlspalette suchen 120</p> <p>Mit Zeilennummern arbeiten 120</p> <p>Die Funktionen der Zell-Werkzeugleiste nutzen 121</p> <p>Mit dem Kernel zusammenarbeiten 122</p> <p>Hilfe anfordern 123</p> <p>Magische Funktionen nutzen 125</p> <p>Laufende Prozesse anzeigen 128</p> <p><b>TEIL II ELEMENTARE PYTHON-BAUSTEINE 129</b></p> <p><b>Kapitel 6 Daten speichern und ändern 131</b></p> <p>Daten speichern 131</p> <p>Variablen als Aufbewahrungskisten betrachten 132</p> <p>Die richtige Kiste zum Speichern der Daten 132</p> <p>Grundlegende Datentypen von Python 133</p> <p>Daten in Variablen ablegen 133</p> <p>Numerische Datentypen 133</p> <p>Boolesche Werte 137</p> <p>Der Datentyp String 138</p> <p>Datum und Uhrzeit 139</p> <p><b>Kapitel 7 Daten verwalten 141</b></p> <p>Steuern, wie Python Daten interpretiert 142</p> <p>Vergleiche durchführen 142</p> <p>Wie Computer Vergleiche durchführen 143</p> <p>Mit Operatoren arbeiten 143</p> <p>Operatoren definieren 144</p> <p>Vorrangregeln für Operatoren 149</p> <p>Erstellen und Verwenden von Funktionen 150</p> <p>Funktionen als Codepäckchen betrachten 150</p> <p>Die Wiederverwendbarkeit von Code ist wichtig 151</p> <p>Funktionen definieren 152</p> <p>Funktionen ausführen 153</p> <p>Daten an Funktionen übergeben 154</p> <p>Datenrückgabe von Funktionen 158</p> <p>Rückgabewerte vergleichen 159</p> <p>Benutzereingaben 159</p> <p><b>Kapitel 8 Entscheidungen treffen 161</b></p> <p>Einfache Entscheidungen mit der »if«-Anweisung treffen 162</p> <p>Die »if«-Anweisung 162</p> <p>Die »if«-Anweisung in Anwendungen verwenden 162</p> <p>Mit der »if…else«-Anweisung Optionen auswählen 167</p> <p>Die »if…else«-Anweisung 167</p> <p>Die »if…else«-Anweisung in einer Anwendung verwenden 167</p> <p>Die »if…elif«-Anweisung in einer Anwendung verwenden 169</p> <p>Verschachtelte Entscheidungen nutzen 172</p> <p>Mehrere »if«- oder »if…else«-Anweisungen verwenden 172</p> <p>Mehrere Entscheidungen miteinander kombinieren 173</p> <p><b>Kapitel 9 Sich wiederholende Aufgaben ausführen 177</b></p> <p>Daten mit der »for«-Schleife verarbeiten 178</p> <p>Die »for«-Schleife 178</p> <p>Eine einfache »for«-Schleife erstellen 178</p> <p>Die Programmausführung mit der »break«-Anweisung steuern 179</p> <p>Die Ausführung mit »continue« steuern 181</p> <p>Die Ausführung mit »pass« steuern 183</p> <p>Die Ausführung mit der »else«-Klausel steuern 184</p> <p>Daten mit der »while«-Anweisung verarbeiten 185</p> <p>Die »while«-Anweisung 185</p> <p>Die »while«-Anweisung in einer Anwendung verwenden 186</p> <p>Schleifen verschachteln 187</p> <p><b>Kapitel 10 Fehlerbehandlung in Programmen 191</b></p> <p>Warum versteht Python mich nicht? 192</p> <p>Fehlerquellen erkennen 193</p> <p>Klassifizieren, wann Fehler auftreten 194</p> <p>Fehlertypen unterscheiden 195</p> <p>Ausnahmen abfangen 197</p> <p>Die grundlegende Ausnahmebehandlung 197</p> <p>Spezifischere Behandlung weniger spezifischer Ausnahmefehler 208</p> <p>Verschachtelte Ausnahmebehandlung 211</p> <p>Ausnahmefehler auslösen 214</p> <p>Ausnahmen unter außergewöhnlichen Umständen auslösen 214</p> <p>Fehlerinformationen an den Aufrufer übergeben 215</p> <p>Benutzerdefinierte Ausnahmen erstellen und verwenden 216</p> <p>Die »finally«-Klausel 218</p> <p><b>TEIL III ALLTÄGLICHE AUFGABENSTELLUNGEN 221</b></p> <p><b>Kapitel 11 Mit Paketen arbeiten 223</b></p> <p>Code gruppieren 224</p> <p>Die Pakettypen verstehen 226</p> <p>Den Cache für Pakete betrachten 227</p> <p>Pakete importieren 228</p> <p>Die »import«-Anweisung verwenden 230</p> <p>Die »from…import«-Anweisung verwenden 231</p> <p>Pakete auf Datenträgern finden 233</p> <p>Pakete aus anderen Quellen herunterladen 235</p> <p>Die Anaconda-Eingabeaufforderung starten 236</p> <p>Mit conda-Paketen arbeiten 237</p> <p>Pakete mit pip installieren 243</p> <p>Sich den Paketinhalt ansehen 243</p> <p>Die Paketdokumentation verwenden 246</p> <p>Die pydoc-Anwendung öffnen 246</p> <p>Die Links für den Schnellzugriff verwenden 247</p> <p>Einen Suchbegriff eingeben 248</p> <p>Die Ergebnisse anschauen 250</p> <p><b>Kapitel 12 Mit Zeichenketten arbeiten 251</b></p> <p>Zeichenketten sind anders 252</p> <p>Einzelne Zeichen durch Zahlen definieren 252</p> <p>Zeichen zur Erstellung von Zeichenketten verwenden 253</p> <p>Zeichenketten mit Sonderzeichen erstellen 254</p> <p>Einzelne Zeichen auswählen 256</p> <p>Zeichenketten schneiden und würfeln 258</p> <p>Einen Wert in einem String finden 261</p> <p>Zeichenketten formatieren 263</p> <p><b>Kapitel 13 Listen verwalten 267</b></p> <p>Daten in einer Anwendung strukturieren 268</p> <p>Strukturen mit Listen nachbilden 268</p> <p>Wie Computer Listen sehen 269</p> <p>Listen erstellen 270</p> <p>Auf Listen zugreifen 272</p> <p>Listen durchlaufen 273</p> <p>Listen bearbeiten 274</p> <p>Listen durchsuchen 277</p> <p>Listen sortieren 279</p> <p>Listen drucken 280</p> <p>Mit dem Counter-Objekt arbeiten 282</p> <p><b>Kapitel 14 Verschiedenartige Daten sammeln 285</b></p> <p>So funktionieren Collections 285</p> <p>Mit Tupeln arbeiten 287</p> <p>Mit Dictionaries arbeiten 290</p> <p>Erstellen und Verwenden von Dictionarys 291</p> <p>Die »switch«-Anweisung durch ein Dictionary ersetzen 294</p> <p>Stapel mithilfe von Listen erstellen 296</p> <p>Mit Warteschlangen arbeiten 299</p> <p>Mit Deques arbeiten 301</p> <p><b>Kapitel 15 Klassen erstellen und verwenden 305</b></p> <p>Klassen als Strukturierungshilfe 306</p> <p>Komponenten einer Klasse 307</p> <p>Eine Klassendefinition schreiben 308</p> <p>Die integrierten Klassenattribute 309</p> <p>Mit Methoden arbeiten 310</p> <p>Mit Konstruktoren arbeiten 312</p> <p>Mit Variablen arbeiten 314</p> <p>Methoden mit variablen Parameterlisten verwenden 316</p> <p>Operatoren überladen 318</p> <p>Eine Klasse erstellen 320</p> <p>MeineKlasse definieren 320</p> <p>Eine Klasse auf Datenträger speichern 321</p> <p>Die Klasse in einer Anwendung verwenden 321</p> <p>Eine Klasse erweitern, um neue Klassen zu schaffen 323</p> <p>Eine Kindklasse schreiben 323</p> <p>Die Klasse in einer Anwendung testen 324</p> <p><b>TEIL IV ANSPRUCHSVOLLERE AUFGABEN 327</b></p> <p><b>Kapitel 16 Daten in Dateien speichern 329</b></p> <p>Wie die permanente Datenspeicherung funktioniert 330</p> <p>Daten für die permanente Speicherung erstellen 332</p> <p>Eine Datei erstellen 335</p> <p>Dateiinhalte lesen 339</p> <p>Dateiinhalte aktualisieren 341</p> <p>Eine Datei löschen 345</p> <p><b>Kapitel 17 E-Mails versenden 347 </b></p> <p>Das passiert, wenn man E-Mails versendet 349</p> <p>E-Mails als herkömmliche Briefe betrachten 349</p> <p>Die Bestandteile des Umschlags 350</p> <p>Die Bestandteile einer Nachricht 355</p> <p>Eine E-Mail-Nachricht erstellen 359</p> <p>Eine Textnachricht versenden 359</p> <p>Eine HTML-Nachricht versenden 360</p> <p>Sich die E-Mail-Ausgabe anschauen 362</p> <p><b>TEIL V DER TOP-TEN-TEIL 363</b></p> <p><b>Kapitel 18 Zehn tolle Quellen für Programmierer 365</b></p> <p>Die Python-Online-Dokumentation nutzen 365</p> <p>Das Tutorial LearnPython org nutzen 366</p> <p>Webanwendungen mit Python programmieren 367</p> <p>Zusätzliche Bibliotheken beschaffen 368</p> <p>Schneller Anwendungen mit einer IDE erstellen 369</p> <p>Einfachere Syntaxprüfung 370</p> <p>XML sinnvoll nutzen 371</p> <p>Die üblichen Anfängerfehler in Python vermeiden 372</p> <p>Unicode verstehen 373</p> <p>Machen Sie Ihrer Python-Anwendung Beine 374</p> <p><b>Kapitel 19 Zehn Möglichkeiten, mit Python Geld zu verdienen 375</b></p> <p>In der Qualitätssicherung arbeiten 376</p> <p>IT-Mitarbeiter in einer kleinen Firma werden 377</p> <p>Spezialskripte für Anwendungen schreiben 377</p> <p>Netzwerkadministration 378</p> <p>Programmierkenntnisse vermitteln 378</p> <p>Leuten dabei helfen, einen bestimmten Ort zu finden 379</p> <p>Data Mining nutzen 379</p> <p>Mit eingebetteten Systemen arbeiten 380</p> <p>Wissenschaftliche Aufgaben erledigen 380</p> <p>Echtzeitanalyse von Daten 381</p> <p><b>Kapitel 20 Zehn Tools zur Erweiterung von Python 383</b></p> <p>Programmfehler mit dem Roundup Issue Tracker dokumentieren 384</p> <p>Eine virtuelle Umgebung mit VirtualEnv erstellen 385</p> <p>Ihre Anwendung mit PyInstaller installieren 386</p> <p>Eine Entwicklerdokumentation mit pdoc erzeugen 387</p> <p>Anwendungscode mit Komodo Edit entwickeln 388</p> <p>Ihre Anwendung mit pydbgr debuggen 389</p> <p>Interaktive Umgebungen mit IPython betreten 390</p> <p>Anwendungen mit PyUnit testen 390</p> <p>Ihren Code mit Isort aufräumen 391</p> <p>Versionskontrolle mit Mercurial 391</p> <p><b>Kapitel 21 Gut zehn Bibliotheken, die Sie kennen sollten 393</b></p> <p>Eine sichere Umgebung mit PyCrypo entwickeln 394</p> <p>Auf Datenbanken mit SQLAlchemy zugreifen 394</p> <p>Die Welt mit Google Maps bereisen 395</p> <p>Benutzeroberflächen mit TkInter erstellen 395</p> <p>Tabellarische Daten mit PrettyTable ansprechend präsentieren 396</p> <p>Anwendungen mit PyAudio und Soundausgabe aufwerten 396</p> <p>Abbildungen mit PyQtGraph bearbeiten 397</p> <p>Daten mit IRLib finden 398</p> <p>Interoperable Java-Umgebungen mit JPype erstellen 399</p> <p>Auf lokale Netzwerkressourcen mit Twisted Matrix zugreifen 399</p> <p>Auf Internet-Ressourcen mit Bibliotheken zugreifen 400</p> <p>Stichwortverzeichnis 401</p>