Python 3 für Studium und Ausbildung
Einfach lernen und professionell anwenden; inkl. E-Book
Diese Publikation zitieren
Accesses
Beschreibung
Beschreibung / Abstract
Alle wichtigen Grundlagen der Python-Programmierung
Für alle Studiengänge geeignet, keine Vorkenntnisse notwendig
Mit Übungsaufgaben und leicht verständlichen Beispielen aus zahlreichen Anwendungsgebieten
Inklusive kostenlosem E-Book zum Download
Programmierkenntnisse sind heute eine Kompetenz, die nicht nur in IT-nahen Berufen vorausgesetzt wird. Dieses Buch richtet sich besonders an alle, die Python in Studium und Ausbildung lernen und keine Vorkenntnisse in der Programmierung haben.
Die Ausrichtung des Studiengangs spielt dabei keine Rolle. Alle Themen werden fachunabhängig erläutert und die Übungen und praktischen Beispiele decken viele unterschiedliche Anwendungsbereiche ab, so dass Sie auf die verschiedensten Aufgaben optimal vorbereitet sind.
Sie werden Schritt für Schritt in die Programmiertechniken eingeführt: von den Grundlagen (Datentypen, Kontrollstrukturen, Funktionen) über die Entwicklung komplexer Anwendungen mit grafischer Benutzungsoberfläche bis hin zur Anbindung an SQL-Datenbanken, Datenvisualisierung und wissenschaftlichem Rechnen mit Arrays (NumPy). Dabei lernen Sie auch, gut lesbare Programmtexte und sauberen Code zu schreiben, und erfahren, wie Sie Fehler finden und von Anfang an vermeiden können.
Zahlreiche praktische Programmierübungen helfen Ihnen, Ihr Wissen zu festigen und sich auf Prüfungssituationen vorzubereiten. Die Lösungen zu allen Übungen inklusive Programmcode finden Sie auf der Verlagsseite zum kostenlosen Download.
Aus dem Inhalt:
- Alle Grundlagen einfach erklärt
- Objektorientierte Programmierung
- Mit Modulen arbeiten und eigene Module erstellen
- Verarbeiten von Texten und Bildern
- Grafische Benutzungsoberflächen mit tkinter
- SQL-Datenbanken mit sqlite3
- Wissenschaftliches Rechnen mit NumPy
- Datenvisualisierung mit Matplotlib
- Nutzung von CoLab und PythonAnywhere
- Webprogrammierung mit CGI und WSGI
- Agile Softwareentwicklung
Inhaltsverzeichnis
- Cover
- DRM
- Titel
- Impressum
- Widmung
- Inhaltsverzeichnis
- Einleitung
- Python in Studium und Ausbildung
- Der Aufbau des Buchs
- Achten Sie auf den Schrifttyp!
- Programmtexte und Lösungen zum Download
- 1 Willkommen zu Python!
- 1.1 Die Programmiersprache Python
- 1.2 Was ist ein Algorithmus?
- 1.3 Syntax und Semantik
- 1.4 Interpreter und Compiler
- 1.5 Python installieren
- 1.6 Python im interaktiven Modus
- 1.7 Die Entwicklungsumgebung IDLE
- 1.8 Hotkeys für die IDLE-Shell
- 1.9 Anweisungen
- 1.10 Zahlen verarbeiten – Python als Taschenrechner
- 1.11 Eine weitere Entwicklungsumgebung: Thonny
- 1.12 Notebooks mit Jupyter und CoLab
- 1.13 Rückblick
- 1.14 Übungen
- 1.15 Lösung der Frage: Semantik im Alltag
- 2 Datentypen – die Python-Typ-Hierarchie
- 2.1 Literale und die Funktion type()
- 2.2 Die Python-Typ-Hierarchie
- 2.3 Standard-Typen
- 2.4 Gemeinsame Operationen für Kollektionen
- 2.5 Objekte eines Typs erzeugen – Casting
- 2.6 Dynamische Typisierung
- 2.7 Rückblick
- 2.8 Übung: Anweisungen
- 3 Interaktive Programme
- 3.1 Das erste Python-Skript
- 3.2 Das EVA-Prinzip
- 3.3 Kommentare
- 3.4 Projekt: Volumenberechnung
- 3.5 Python-Programme starten
- 3.6 Fehler finden
- 3.7 Rückblick
- 3.8 Übungen
- 3.9 Lösungen zu den Fragen
- 4 Kontrollstrukturen
- 4.1 Programmverzweigungen
- 4.2 Das Layout von Python-Programmen: Zeilen und Blöcke
- 4.3 Bedingungen konstruieren
- 4.4 Bedingte Wiederholung – while
- 4.5 Iterationen – for
- 4.6 Rückblick
- 4.7 Übungen
- 4.8 Lösungen zu den Fragen
- 5 Funktionen
- 5.1 Warum definiert man Funktionen?
- 5.2 Definition und Aufruf einer Funktion
- 5.3 Optionale Parameter und voreingestellte Werte
- 5.4 Eine Funktion in der Shell testen
- 5.5 Die return-Anweisung
- 5.6 Positionsargumente und Schlüsselwortargumente
- 5.7 Guter Programmierstil
- 5.8 Die print()-Funktion unter der Lupe
- 5.9 Globale und lokale Namen
- 5.10 Rekursive Funktionen
- 5.11 Lambda-Funktionen *
- 5.12 Funktionen als Argumente: map() und filter() *
- 5.13 Rückblick
- 5.14 Übungen
- 5.15 Lösungen zu den Fragen
- 6 Mit Modulen arbeiten
- 6.1 Importanweisungen
- 6.2 Mathematische Funktionen: Das Modul math
- 6.3 Zufallsfunktionen: Das Modul random
- 6.4 Datum und Zeit
- 6.5 Ein eigenes Modul erstellen
- 6.6 Module aus dem Python Package Index (PyPI)
- 6.7 Rückblick
- 6.8 Übungen
- 7 Mit Kollektionen modellieren
- 7.1 Sequenzen
- 7.2 Projekt: Telefonliste
- 7.3 Dictionaries
- 7.4 Projekt: Vokabeltrainer
- 7.5 Projekt: Routenplaner
- 7.6 Rückblick
- 7.7 Übungen
- 7.8 Lösungen zu den Fragen
- 8 Daten speichern
- 8.1 Wie werden Daten gespeichert?
- 8.2 Laufzeitfehler abfangen
- 8.3 with-Anweisungen
- 8.4 Projekt: Logbuch
- 8.5 Datenstrukturen speichern und laden: Das Modul pickle
- 8.6 Projekt: Digitaler Planer
- 8.7 Daten im JSON-Format speichern
- 8.8 Projekt: Temperaturdaten
- 8.9 Daten aus dem Internet
- 8.10 Projekt: Digitale Bibliothek
- 8.11 Rückblick
- 8.12 Übung: News-Check
- 8.13 Lösungen zu den Fragen
- 9 Textverarbeitung
- 9.1 Unicode-Nummern für Zeichen
- 9.2 Escape-Sequenzen
- 9.3 Stringmethoden
- 9.4 Projekt: Goethes Wortschatz
- 9.5 Projekt: Wie warm wird es heute?
- 9.6 Ausblick: Reguläre Ausdrücke *
- 9.7 Texte mit variablen Teilen
- 9.8 Projekt: Textanalyse
- 9.9 Projekt: Storytelling
- 9.10 Rückblick
- 9.11 Übungen
- 9.12 Lösungen zu den Fragen
- 10 Zugriff auf die Systemumgebung
- 10.1 Schnittstelle zum Betriebssystem: Das Modul os
- 10.2 Suchen und Eigenschaften ermitteln
- 10.3 Dateien und Verzeichnisse anlegen und umbenennen
- 10.4 Das Modul sys – die Schnittstelle zum Laufzeitsystem
- 10.5 Rückblick
- 10.6 Übungen
- 10.7 Lösung zu der Frage: Welcher Kommentar passt?
- 11 Grafische Benutzungsoberflächen
- 11.1 Widgets
- 11.2 Das Anwendungsfenster Tk
- 11.3 Ein Widget einfügen
- 11.4 Das Aussehen der Widgets gestalten
- 11.5 Gemeinsame Methoden der Widgets
- 11.6 Schaltflächen und Eventhandler
- 11.7 Das Layout verfeinern
- 11.8 Raster-Layout
- 11.9 Projekt: 25 Farben – ein automatisches Farbfelder-Bild
- 11.10 Widgets zur Texteingabe
- 11.11 Radiobuttons
- 11.12 Dialogboxen
- 11.13 Parallele Abläufe: Threads
- 11.14 Rückblick
- 11.15 Übungen
- 11.16 Lösungen zu den Fragen
- 12 Grafik programmieren
- 12.1 Bilder auf Schaltflächen und Labels
- 12.2 Canvas
- 12.3 Projekt: Creative Coding
- 12.4 Die Python Imaging Library (PIL)
- 12.5 Rückblick
- 12.6 Übungen
- 13 Fehler finden und vermeiden
- 13.1 Zusicherungen
- 13.2 Tracing
- 13.3 Debugging mit IDLE
- 13.4 Debugging mit Thonny
- 13.5 Rückblick
- 13.6 Lösungen zu den Fragen
- 14 Objektorientierte Programmierung
- 14.1 Klassen und Objekte
- 14.2 Projekt: Geld
- 14.3 Magische Methoden
- 14.4 Projekt: Abrechnung
- 14.5 Vererbung
- 14.6 Projekt: Farbtester
- 14.7 Projekt: Zahlenregen
- 14.8 Rückblick
- 14.9 Übungen
- 14.10 Lösungen zu den Fragen
- 15 Datenbanktechnik
- 15.1 Was ist ein Datenbanksystem?
- 15.2 Eine Datenbank entwerfen – das Entity-Relationship-Diagramm (ER)
- 15.3 Relationale Datenbanken
- 15.4 Relationen mit Python darstellen *
- 15.5 Das Modul sqlite3 – Schnittstelle zu einer SQL-Datenbank
- 15.6 Projekt: Zitatesammlung
- 15.7 Rückblick
- 15.8 Übungen
- 15.9 Lösungen zu den Fragen
- 16 Wissenschaftliche Projekte
- 16.1 NumPy – Rechnen mit Arrays
- 16.2 Datenvisualisierung mit matplotlib
- 16.3 Projekt: Bewegungsprofil
- 16.4 Google Colaboratory – Colab
- 16.5 Projekt: Füchse und Hasen – Simulation eines Räuber-Beute-Systems
- 16.6 Rückblick
- 16.7 Übungen
- 16.8 Lösungen zu den Fragen
- 17 Dynamische Webseiten: CGI und WSGI
- 17.1 Dynamische Webseiten mit CGI
- 17.2 Interaktive Webseiten
- 17.3 Wie verarbeitet man Umlaute? *
- 17.4 Dynamische Webseiten mit WSGI
- 17.5 Projekt: Wie spät ist es? (II)
- 17.6 Projekt: Umfrage
- 17.7 Einen Hosting-Dienst nutzen
- 17.8 Rückblick
- 17.9 Übungen
- 17.10 Lösung zur Frage: Interaktive Webseite
- 18 Professionelle Software-Entwicklung
- 18.1 Die Laufzeit von Programmen
- 18.2 Agile Software-Entwicklung
- 18.3 Projekt: Digitales Notizbuch
- 18.4 Test Driven Development mit doctest
- 18.5 Übung: Ticketbuchung
- Glossar