Details
Python. Der Sprachkurs für Einsteiger und Individualisten
1. Aufl.
17,99 € |
|
Verlag: | Wiley-VCH (D) |
Format: | EPUB |
Veröffentl.: | 20.10.2015 |
ISBN/EAN: | 9783527694723 |
Sprache: | deutsch |
Anzahl Seiten: | 381 |
DRM-geschütztes eBook, Sie benötigen z.B. Adobe Digital Editions und eine Adobe ID zum Lesen.
Beschreibungen
<p><b>Python – einfach und leistungsfähig</b></p> <p>Sie haben schon viel Gutes über Python gehört und möchten auch in Python programmieren? Dann brauchen Sie dieses Buch. Vorwissen hingegen brauchen Sie nicht. Arnold Willemer erklärt Ihnen zu Beginn, was ein Programmierer überhaupt macht und wie ein Computer mit Zahlen und Texten umgeht. Danach erarbeiten Sie sich mit ihm Schritt für Schritt die Kunst des Programmierens in Python. Die witzige und gut gelaunte Schreibe des Autors wirkt zusätzlich motivierend. Und Ihren Lernerfolg können Sie anhand vieler Aufgaben und Musterlösungen überprüfen. So ermöglicht Ihnen das Buch zuverlässig den schnellen Einstieg in Python.<br /><br />Aus dem Inhalt<br />• Programmieren für Einsteiger<br />• Beschaffung und Installation der notwendigen Werkzeuge<br />• Variablen, Abfragen, Schleifen, Funktionen<br />• Objektorientierte Programmierung<br />• Sequenzen, Tupel und Listen<br />• Grafi sche Oberfl ächen mit Tkinter<br />• Visualisieren mit dem Canvas-Widget<br />• Module und Bibliotheken<br />• Datenbankprogrammierung<br />• Kommunikation in Netzwerken und mit dem Betriebssystem</p>
Vorwort 11 <p>1 Programmieren für Einsteiger 15</p> <p>1.1 Was tut eigentlich ein Programmierer? 15</p> <p>1.2 Wie der Computer mit Daten umgeht 19</p> <p>1.3 Sprachbarrieren zwischen Mensch und Computer 20</p> <p>2 Annäherung an Python 23</p> <p>2.1 Beschaffung und Installation 24</p> <p>2.2 Werkzeug 25</p> <p>2.2.1 Die Standard-IDE IDLE 26</p> <p>2.2.2 Direktaufruf von Editor und Interpreter 27</p> <p>2.3 Gestaltung eines Python-Programms 29</p> <p>2.4 Kommentare 30</p> <p>2.5 Die Last mit den Umlauten 31</p> <p>3 Speicherwerke für Rechenkünstler 33</p> <p>3.1 Verschiedene Zahlen 34</p> <p>3.2 Mathematische Ausdrücke 35</p> <p>3.3 Programmatisches Geschwätz: Zeichenketten 38</p> <p>3.4 Alles muss raus: print 39</p> <p>3.5 Futter für die Programme: input 41</p> <p>3.6 Konvertierung der Variablentypen 42</p> <p>3.7 Aufgaben 44</p> <p>4 Ablaufstrukturen 47</p> <p>4.1 Abfrage if 47</p> <p>4.2 Der Umgang mit der Wahrheit 50</p> <p>4.2.1 Vergleich zwischen Zahlen 50</p> <p>4.2.2 Vergleich von Zeichenketten 52</p> <p>4.2.3 Boolesche Verknüpfungen 53</p> <p>4.3 Programmierte Wiederholung: Schleifen 55</p> <p>4.3.1 Mit der Bedingung im Kopf: while 55</p> <p>4.3.2 Prüfung der Benutzereingabe 56</p> <p>4.3.3 Listen durchschleifen: for 60</p> <p>4.3.4 Schleifenbruch mit break und continue 62</p> <p>4.3.5 Schleifen können auch anders: else 63</p> <p>4.4 Das Bermuda-Projekt 63</p> <p>4.5 Aufgaben 66</p> <p>5 Funktionen 69</p> <p>5.1 Rückgabewert und Adresse einer Funktion 70</p> <p>5.2 Parameter 71</p> <p>5.2.1 Vorbelegte Parameter 73</p> <p>5.2.2 Parameter per Namen belegen 74</p> <p>5.2.3 Variable Anzahl von Parametern 75</p> <p>5.3 Globale und lokale Variablen 76</p> <p>5.4 Rekursion: Selbstgespräche einer Funktion 78</p> <p>5.5 Die anonyme Funktion lambda 81</p> <p>5.6 Das Bermuda-Projekt 81</p> <p>5.7 Aufgaben 83</p> <p>6 Wir bauen die Welt: Klassen 87</p> <p>6.1 Konstruktor (und Destruktor?) 91</p> <p>6.2 Privat oder Öffentlich? 92</p> <p>6.3 Statisch: Ein Attribut für alle Objekte der Klasse 96</p> <p>6.4 Wenn eine Zuweisung zur Referenz führt 98</p> <p>6.5 Referenzlos im Abfall 100</p> <p>6.6 Ein eigener Datencontainer: Der Binärbaum 101</p> <p>6.6.1 Bäume, Äste und Knoten 102</p> <p>6.6.2 Einbau einer Besucherfunktion 105</p> <p>6.7 Selbst gebaute Operatoren 106</p> <p>6.8 Erweiterte Erbschaftsangelegenheiten 109</p> <p>6.8.1 Vererbung am Beispiel von Supermans Kiosk 110</p> <p>6.8.2 Abstrakte Basisklassen 114</p> <p>6.8.3 Polymorphie? Ein Problem der Anderen 116</p> <p>6.8.4 Mehrfachvererbung 117</p> <p>6.9 Das Bermuda-Projekt 119</p> <p>6.10 Aufgaben 121</p> <p>7 Ausnahmsweise falsch: Die Exception 125</p> <p>7.1 Selbst gemachte Exception basteln 128</p> <p>7.2 Python-Exceptions 131</p> <p>7.3 Eine Zusicherung: Assert 132</p> <p>8 Der Umgang mit Texten 133</p> <p>8.1 Der Umgang mit Zeichenketten und deren Operatoren 133</p> <p>8.2 Die Sequenz und die rechteckigen Klammern 134</p> <p>8.3 Die String-Methoden 136</p> <p>8.4 Textformatierung 139</p> <p>8.4.1 Zeichenketten mit format ausrichten 140</p> <p>8.4.2 Formatierung über das Prozentzeichen 141</p> <p>8.5 Steuerzeichen 142</p> <p>8.6 Internationales Parkett 143</p> <p>8.6.1 Internationale Sonderzeichen im Programm 143</p> <p>8.6.2 Daten umcodieren 144</p> <p>8.6.3 Die nationale Umgebung 145</p> <p>8.7 Mustererkennung mit regulären Ausdrücken 149</p> <p>8.7.1 Die Funktionen für den Vergleich 149</p> <p>8.7.2 Die wichtigsten Platzhalterzeichen 152</p> <p>8.7.3 Beispielhafte Suche 152</p> <p>8.7.4 Verfressene Quantoren 155</p> <p>8.7.5 Noch ein paar Platzhalter 155</p> <p>8.8 Das Bermuda-Projekt 156</p> <p>8.9 Aufgaben 157</p> <p>9 Kä;;ghaltung für Datenrudel 159</p> <p>9.1 Schön eng beieinander: Die Sequenz 160</p> <p>9.2 Heterogene Gemeinsamkeit: Das Tupel 160</p> <p>9.3 Elementweise veränderbar: Die Liste 165</p> <p>9.3.1 Listen anlegen und initialisieren 165</p> <p>9.3.2 Elemente hinzufügen, ändern und löschen 166</p> <p>9.3.3 Umräumen und sortieren 168</p> <p>9.4 Dimensionen 169</p> <p>9.5 Die Reißverschlussfunktion zip 171</p> <p>9.6 Zugriff per Schlüssel: Das Dictionary 171</p> <p>9.7 Einzigartig und unordentlich: Die Menge 173</p> <p>9.8 Das Geheimnis der Container 176</p> <p>9.9 Das Bermuda-Projekt 178</p> <p>9.10 Aufgaben 183</p> <p>10 Gra;;sche Ober;;äche (Tkinter) 187</p> <p>10.1 Eine kleine Anwendung 189</p> <p>10.2 Das Programm ist Event-gesteuert 190</p> <p>10.2.1 Kontrollelemente lösen Ereignisse aus 190</p> <p>10.2.2 Ereignisse und Reaktionen 192</p> <p>10.3 Kontrollelemente im Fenster anordnen: Layout 194</p> <p>10.3.1 Pack alles aufeinander! 194</p> <p>10.3.2 Hinter Gitter verteilen: Grid 198</p> <p>10.3.3 Pixelweise positionieren: Place 199</p> <p>10.4 Kontrollelemente und ihre Optionen 201</p> <p>10.4.1 Tkinter-Variablen . 203</p> <p>10.4.2 Label: Aufkleber mit Schriftart 204</p> <p>10.4.3 Druckknopf: Button 206</p> <p>10.4.4 Einer unter vielen: Radiobutton 207</p> <p>10.4.5 Abgehakt: Checkbutton 209</p> <p>10.4.6 Der Umgang mit der Listbox 210</p> <p>10.4.7 Ein Scrollbar am Beispiel einer Listbox 212</p> <p>10.4.8 Die Eingabezeile Entry 214</p> <p>10.4.9 Texte anzeigen und editieren 217</p> <p>10.4.10 Schmackhafte Menüs 219</p> <p>10.5 Eine selbst gebaute Tabelle 222</p> <p>10.6 Dialogboxen 224</p> <p>10.6.1 Kurzmeldung: Die Messagebox 224</p> <p>10.6.2 Datei- und Verzeichnisauswahl 227</p> <p>10.6.3 Farbselektor 231</p> <p>10.6.4 Der eigene Dialog: tk_dialog 231</p> <p>10.7 Das Bermuda-Projekt 233</p> <p>10.8 Aufgaben 235</p> <p>11 Kleine Zeichenschule 241</p> <p>11.1 Canvas erzeugen 241</p> <p>11.2 Zeichnen im Canvas 242</p> <p>11.2.1 Linien 243</p> <p>11.2.2 Rechtecke 244</p> <p>11.2.3 Polygone 245</p> <p>11.2.4 Ovale und Kreise 246</p> <p>11.2.5 Bögen und Tortenstücke 247</p> <p>11.2.6 Texte in die Gra;;k 250</p> <p>11.2.7 Bilder und Symbole 251</p> <p>11.2.8 Die Ereignisse im Canvas 253</p> <p>11.3 Canvas als Widget-Halter 256</p> <p>11.4 Das Bermuda-Projekt 257</p> <p>11.5 Aufgaben 262</p> <p>12 Gut verschnürt: Module, Pakete und Bibliotheken 265</p> <p>12.1 Import 265</p> <p>12.2 Eigene Module 267</p> <p>12.3 Module testen 269</p> <p>12.3.1 Das Hauptprogramm als Selbsttest 269</p> <p>12.3.2 Kommentare testen Funktionen: doctest 270</p> <p>12.3.3 unittest 272</p> <p>12.4 Gebündelt zum Paket 274</p> <p>12.5 Aufgaben 276</p> <p>13 Naturwissenschaftliches 277</p> <p>13.1 Mathematik: math 277</p> <p>13.2 Zufallszahlen: random 280</p> <p>13.3 Dezimalbrüche: decimal 280</p> <p>13.4 Lineare Algebra mit NumPy und SciPy 282</p> <p>13.5 Datumsbibliothek 284</p> <p>13.5.1 Das Paket datetime 284</p> <p>13.5.2 Das klassische Modul time 286</p> <p>13.5.3 Schlafenszeit 288</p> <p>13.6 Aufgaben 289</p> <p>14 Dateien 291</p> <p>14.1 Textdateien 291</p> <p>14.2 Binärdateien 293</p> <p>14.3 Zusammenfassung 295</p> <p>14.4 Exceptions 296</p> <p>14.5 Strukturierte Variablen sichern: JSON 297</p> <p>14.6 Packen und Komprimieren: GZIP, ZIP und TAR 298</p> <p>14.6.1 Eine Datei komprimieren: gzip 299</p> <p>14.6.2 ZIP-Dateien und TAR-Archive 300</p> <p>14.7 Aufgaben 302</p> <p>15 Python und Datenbanken 305</p> <p>15.1 Nichts als Tabellen 306</p> <p>15.2 Verbindungsaufbau 309</p> <p>15.2.1 Eine kleine, lokale Datenbank namens SQLite 309</p> <p>15.2.2 Die allgegenwärtige Datenbank MySQL 310</p> <p>15.2.3 Wenn es etwas mehr sein soll: PostgreSQL 312</p> <p>15.3 Tabellen erstellen: CREATE 313</p> <p>15.4 Variationen von INSERT 315</p> <p>15.5 Änderungen mit UPDATE 316</p> <p>15.6 Löschen mit DELETE 316</p> <p>15.7 Ergebnisermittlung durch SELECT 317</p> <p>16 Umgang mit XML-Dateien 319</p> <p>16.1 Eine Speisekarte als XML-Datei 321</p> <p>16.2 XML-Dateien mit ElementTree bearbeiten 322</p> <p>16.3 Der XML-Klassiker DOM 326</p> <p>16.4 Schrittweise durch die XML-Datei: SAX 329</p> <p>16.5 Aufgaben 331</p> <p>17 Netzwerk: Socket, E-Mail und WWW 335</p> <p>17.1 Der Griff in die Steckdose: Sockets 335</p> <p>17.2 Versenden von Mails: SMTP 339</p> <p>17.3 Auslesen von Mails per POP3 343</p> <p>17.4 Griff ins WWW 347</p> <p>18 Parallelverarbeitung mit Threads 349</p> <p>18.1 Das machen wir im Schlaf 350</p> <p>18.2 Glockengeläut im Threading 350</p> <p>18.2.1 Die Vereinzelungsanlage 352</p> <p>18.2.2 Warten auf den Startschuss 354</p> <p>18.2.3 Ein kleiner Wecker 355</p> <p>18.3 Die alte Bibliothek thread 356</p> <p>19 Zusammenarbeit mit dem Betriebssystem 359</p> <p>19.1 Die Aufrufparameter des Programms 359</p> <p>19.2 Umgebungsvariablen 360</p> <p>19.3 Aufruf anderer Programme 361</p> <p>19.4 Umgang mit dem Dateisystem 363</p> <p>19.5 Das Ende des Programms 364</p> <p>Programmentwicklung und Werkzeuge 367</p> <p>A Fehler sind auch nur Menschen: Der Debugger 367</p> <p>B Eclipse mit PyDev 368</p> <p>C Richtig distribuieren: Das eigene Setup 372</p> <p>Stichwortverzeichnis 377</p>
<b>Arnold Willemer</b> ist Programmierer und Administrator mit mehr als zwanzig Jahren Berufserfahrung. Er hat mehrere erfolgreiche Bücher zu Programmiersprachen und Betriebssystemen geschrieben, die sich durch ihre große Verständlichkeit und ihren lockeren Ton auszeichnen.
<p><b>Python – einfach und leistungsfähig</b></p> <p>Sie haben schon viel Gutes über Python gehört und möchten auch in Python programmieren? Dann brauchen Sie dieses Buch. Vorwissen hingegen brauchen Sie nicht. Arnold Willemer erklärt Ihnen zu Beginn, was ein Programmierer überhaupt macht und wie ein Computer mit Zahlen und Texten umgeht. Danach erarbeiten Sie sich mit ihm Schritt für Schritt die Kunst des Programmierens in Python. Die witzige und gut gelaunte Schreibe des Autors wirkt zusätzlich motivierend. Und Ihren Lernerfolg können Sie anhand vieler Aufgaben und Musterlösungen überprüfen. So ermöglicht Ihnen das Buch zuverlässig den schnellen Einstieg in Python.<br /><br />Aus dem Inhalt<br />• Programmieren für Einsteiger<br />• Beschaffung und Installation der notwendigen Werkzeuge<br />• Variablen, Abfragen, Schleifen, Funktionen<br />• Objektorientierte Programmierung<br />• Sequenzen, Tupel und Listen<br />• Grafi sche Oberfl ächen mit Tkinter<br />• Visualisieren mit dem Canvas-Widget<br />• Module und Bibliotheken<br />• Datenbankprogrammierung<br />• Kommunikation in Netzwerken und mit dem Betriebssystem</p>