Routineaufgaben mit Python automatisieren, 2nd Edition
Python eignet sich sehr gut als Einstieg und für viele Standardaufgaben. Wie man mit Python 3 Aufgaben in Sekundenschnelle erledigen kann, die sonst viel Zeit in Anspruch nehmen würden, lernt man mit diesem Buch. Programmiererfahrung ist dafür nicht erforderlich: Wer einmal die Grundlagen gemeistert...
Other Authors: | , |
---|---|
Format: | eBook |
Language: | Inglés |
Published: |
dpunkt
2020.
|
Edition: | 2nd edition |
Subjects: | |
See on Biblioteca Universitat Ramon Llull: | https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009631539806719 |
Table of Contents:
- Intro
- Inhalt
- Der Autor
- Der Fachgutachter
- Danksagung
- Einleitung
- Für wen ist dieses Buch gedacht?
- Programmierstil
- Was ist Programmierung?
- Was ist Python?
- Programmierer müssen nicht viel Mathe können
- Sie sind nie zu alt, um programmieren zu lernen
- Programmierung ist kreativ
- Der Aufbau dieses Buchs
- Python herunterladen und installieren
- Mu herunterladen und installieren
- Mu starten
- IDLE starten
- Die interaktive Shell
- Drittanbietermodule installieren
- Hilfe finden
- Sinnvolle Fragen stellen
- Zusammenfassung
- Teil 1: Grundlagen der Python-Programmierung
- Kapitel 1: Grundlagen von Python
- Ausdrücke in die interaktive Shell eingeben
- Die Datentypen für ganze Zahlen, Fließkommazahlen und Strings
- Stringverkettung und -wiederholung
- Werte in Variablen speichern
- Zuweisungsanweisungen
- Variablennamen
- Ihr erstes Programm
- Analyse des Programms
- Kommentare
- Die Funktion print()
- Die Funktion input()
- Den Benutzernamen ausgeben
- Die Funktion len()
- Die Funktionen str(), int() und float()
- Zusammenfassung
- Wiederholungsfragen
- Kapitel 2: Flusssteuerung
- Boolesche Werte
- Vergleichsoperatoren
- Boolesche Operatoren
- Binäre boolesche Operatoren
- Der Operator not
- Kombinierte Verwendung von booleschen und Vergleichsoperatoren
- Elemente zur Flusssteuerung
- Bedingungen
- Codeblöcke
- Programmausführung
- Flusssteuerungsanweisungen
- If-Anweisungen
- Else-Anweisungen
- Elif-Anweisungen
- While-Schleifen
- Break-Anweisungen
- Continue-Anweisungen
- For-Schleifen und die Funktion range()
- Module importieren
- From-import-Anweisungen
- Programme mit sys.exit() vorzeitig beenden
- Ein kurzes Programm: Zahlen raten
- Ein kurzes Programm: Stein, Schere, Papier
- Zusammenfassung
- Wiederholungsfragen
- Kapitel 3: Funktionen.
- Def-Anweisungen mit Parametern
- Terminologie
- Rückgabewerte und die Anweisung return
- Der Wert None
- Schlüsselwortargumente und print()
- Der Aufrufstack
- Lokaler und globaler Gültigkeitsbereich
- Lokale Variablen können im globalen Gültigkeitsbereich nicht verwendet werden
- Lokale Gültigkeitsbereiche können keine Variablen aus anderen lokalen Gültigkeitsbereichen verwenden
- Globale Variablen können von einem lokalen Gültigkeitsbereich aus gelesen werden
- Lokale und globale Variablen mit demselben Namen
- Die Anweisung global
- Ausnahmebehandlung
- Ein kurzes Programm: Zickzackmuster
- Zusammenfassung
- Wiederholungsfragen
- Übungsprojekte
- Die Collatz-Folge
- Eingabevalidierung
- Kapitel 4: Listen
- Der Datentyp für Listen
- Einzelne Elemente einer Liste mithilfe des Index abrufen
- Negative Indizes
- Teillisten mithilfe von Slices abrufen
- Die Länge einer Liste mit len() abrufen
- Werte in einer Liste mithilfe des Index ändern
- Listenverkettung und -wiederholung
- Elemente mit del aus einer Liste entfernen
- Listen verwenden
- Listen in for-Schleifen
- Die Operatoren in und not in
- Der Trick mit der Mehrfachzuweisung
- Die Funktion enumerate() für Listen
- Die Funktionen random.choice() und random.shuffle() für Listen
- Erweiterte Zuweisungsoperatoren
- Methoden
- Elemente in einer Liste mit der Methode index() finden
- Elemente mit den Methoden append() und insert() zu Listen hinzufügen
- Elemente mit remove() aus Listen entfernen
- Elemente in einer Liste mit sort() sortieren
- Reihenfolge der Listeneinträge mit reverse() umkehren
- Beispielprogramm: Magic 8 Ball mithilfe einer Liste
- Sequenzielle Datentypen
- Veränderbare und unveränderbare Datentypen
- Der Datentyp für Tupel
- Typen mit den Funktionen list() und tuple() umwandeln
- Verweise
- Identität und die Funktion id().
- Verweise übergeben
- Die Funktionen copy() und deepcopy() des Moduls copy
- Ein kurzes Programm: Conways Spiel des Lebens
- Zusammenfassung
- Wiederholungsfragen
- Übungsprojekte
- Kommacode
- Münzwurffolgen
- Zeichenbildraster
- Kapitel 5: Dictionaries und Datenstrukturen
- Der Datentyp für Dictionaries
- Dictionaries und Listen im Vergleich
- Die Methoden keys(), values() und items()
- Das Vorhandensein eines Schlüssels oder Wertes im Dictionary ermitteln
- Die Methode get()
- Die Methode setdefault()
- Saubere Ausgabe
- Datenstrukturen zur Modellierung realer Objekte
- Ein Tic-Tac-Toe-Brett
- Verschachtelte Dictionaries und Listen
- Zusammenfassung
- Wiederholungsfragen
- Übungsprojekte
- Validierer für Schach-Dictionary
- Inventar für ein Fantasyspiel
- Eine Funktion zum Hinzufügen von Listeninhalten zum Inventar-Dictionary
- Kapitel 6: Stringbearbeitung
- Umgang mit Strings
- Stringliterale
- Strings indizieren und Slices entnehmen
- Die Operatoren in und not in für Strings
- Strings in andere Strings einfügen
- Nützliche Stringmethoden
- Die Stringmethoden upper(), lower(), isupper() und islower()
- Die isX-Stringmethoden
- Die Stringmethoden startswith() und endswith()
- Die Methoden join() und split()
- Strings mit der Methode partition() aufteilen
- Text mit rjust(), ljust() und center() ausrichten
- Weißraum mit strip(), rstrip() und lstrip() entfernen
- Die Funktionen ord() und chr() für numerische Zeichenwerte
- Strings mit dem Modul pyperclip kopieren und einfügen
- Projekt: Automatisierte Nachrichten mithilfe einer Mehrfach-Zwischenablage
- Schritt 1: Programmdesign und Datenstrukturen
- Schritt 2: Befehlszeilenargumente verarbeiten
- Schritt 3: Die richtige Antwort kopieren
- Projekt: Aufzählungspunkte zu einem Wiki-Markup hinzufügen.
- Schritt 1: Text von und zur Zwischenablage übertragen
- Schritt 2: Textzeilen trennen und Sternchen hinzufügen
- Schritt 3: Die veränderten Zeilen zusammenfügen
- Ein kurzes Programm: Pig Latin
- Zusammenfassung
- Wiederholungsfragen
- Übungsprojekt
- Tabellenausgabe
- Bots für Zombie Dice
- Teil 2: Aufgaben automatisieren
- Kapitel 7: Mustervergleich mit regulären Ausdrücken
- Textmuster ohne reguläre Ausdrücke finden
- Textmuster mithilfe regulärer Ausdrücke finden
- Regex-Objekte erstellen
- Vergleiche mit einem Regex-Objekt
- Zusammenfassung: Mustervergleich mit regulären Ausdrücken
- Weitere Möglichkeiten für den Mustervergleich mithilfe regulärer Ausdrücke
- Gruppierung durch Klammern
- Mithilfe der Pipe nach Übereinstimmungen mit mehreren Gruppen suchen
- Optionale Übereinstimmung mit dem Fragezeichen
- Mit dem Sternchen nach null oder mehr Übereinstimmungen suchen
- Mit dem Pluszeichen nach einer oder mehr Übereinstimmungen suchen
- Mit geschweiften Klammern nach einer genauen Zahl von Wiederholungen suchen
- Gieriger und nicht gieriger Mustervergleich
- Die Methode findall()
- Zeichenklassen
- Eigene Zeichenklassen bilden
- Zirkumflex und Dollarzeichen
- Das Jokerzeichen
- Beliebige Übereinstimmungen mit Punkt-Stern finden
- Zeilenumbrüche mit dem Punktsymbol finden
- Übersicht über Regex-Symbole
- Übereinstimmungen ohne Berücksichtigung der Groß- und Kleinschreibung
- Strings mit der Methode sub() ersetzen
- Umgang mit komplizierten regulären Ausdrücken
- Die Variablen re.IGNORECASE, re.DOTALL und re.VERBOSE kombinieren
- Projekt: Extraktionsprogramm für Telefonnummern und E-Mail-Adressen
- Schritt 1: Einen regulären Ausdruck für Telefonnummern erstellen
- Schritt 2: Einen regulären Ausdruck für E-Mail-Adressen erstellen
- Schritt 3: Alle Überstimmungen im Inhalt der Zwischenablage finden.
- Schritt 4: Die gefundenen Übereinstimmungen zu einem String kombinieren
- Das Programm ausführen
- Ideen für ähnliche Programme
- Zusammenfassung
- Wiederholungsfragen
- Übungsprojekte
- Datumserkennung
- Passwortstärke ermitteln
- Regex-Version von strip()
- Kapitel 8: Eingabevalidierung
- Das Modul PyInputPlus
- Die Schlüsselwortargumente min, max, greaterThan und lessThan
- Das Schlüsselwortargument blank
- Die Schlüsselwortargumente limit, timeout und default
- Die Schlüsselwortargumente allowRegexes und blockRegexes
- Eine eigene Validierungsfunktion an inputCustom() übergeben
- Projekt: Einen Trottel stundenlang beschäftigen
- Projekt: Multiplikationstest
- Zusammenfassung
- Wiederholungsfragen
- Übungsprojekte
- Sandwichzubereiter
- Ein eigenes Programm für den Multiplikationstest
- Kapitel 9: Dateien lesen und schreiben
- Dateien und Dateipfade
- Backslash unter Windows und Schrägstrich unter macOS und Linux
- Pfade mit dem Operator / zusammenfügen
- Das aktuelle Arbeitsverzeichnis
- Das Benutzerverzeichnis
- Absolute und relative Pfade
- Neue Ordner mit os.makedirs() erstellen
- Absolute und relative Pfade verwenden
- Die Komponenten eines Dateipfads abrufen
- Dateigrößen und Ordnerinhalte ermitteln
- Eine Dateiliste mit Glob-Mustern bearbeiten
- Die Gültigkeit von Pfaden prüfen
- Dateien lesen und schreiben
- Dateien mit der Funktion open() öffnen
- Die Inhalte einer Datei lesen
- Dateien schreiben
- Variablen mit dem Modul shelve speichern
- Variablen mit der Funktion pprint.pformat() speichern
- Projekt: Zufallsgenerator für Tests
- Schritt 1: Die Daten für den Test in einem Dictionary speichern
- Schritt 2: Die Fragebogendatei erstellen und die Fragen mischen
- Schritt 3: Die Auswahl der möglichen Antworten zusammenstellen.
- Schritt 4: Den Inhalt der Dateien für die Frage- und Lösungsbogen schreiben.