Home - janehlenb/Projektarbeit-ChatGPT-Python GitHub Wiki

Willkommen im Wiki zur Projektarbeit Python mit ChatGPT!

Dieses Verzeichnis stellt ein Python Tutorial dar, welches im Rahmen einer Projektarbeit für andere Studierende, Mitarbeitende und Lehrende der TH OWL erstellt wurde. Die einzelnen Abschnitte, Texte, Erklärungen, Code Beispiele usw. wurden mit Hilfe des Chatbots ChatGPT des Herstellers OpenAI erstellt.

Das Tutorial ist in mehrere Abschnitte gegliedert, welche durch die Teilnehmenden der Projektarbeit als am sinnvollsten und für die meisten Studiengänge am nützlichsten eingestuft wurden. Die einzelnen Abschnitte können wiederum weitere Unterabschnitte enthalten. Die als Grundlagen bezeichneten Themen dienen dazu, die Grundbegriffe und Basistechniken der Programmiersprache Python zu erlernen und eine Übersicht über die Struktur der objektorientierten Programmierung zu geben. Dieser Abschnitt richtet sich also insbesondere an alle, die ohne Vorerfahrung in die Programmiersprache Python einsteigen wollen. Es wird empfohlen, diesen Abschnitt als erstes zu lesen und zu bearbeiten. Alle weiteren Abschnitte bauen auf diesen erlernten Techniken auf und einzelne Funktionen im Code, welche Grundwissen darstellen, werden nicht erneut vollständig erläutert werden.

Wir wünschen allen Lesenden und angehenden Python Programmierenden viel Erfolg und Spaß!

Voraussetzungen

Seite Beschreibung
Installation Python und Pip Installation von Python und Pip auf Windows, Linux & macOS
Visual Studio Code Installation Installation der kostenfreien und von uns empfohlenen Entwicklungsumgebung VS Code von Microsoft

Grundlagen

Seite Beschreibung
Arrays Geordnete Datensammlungen mit Indexzugriff
Dictionaries Schlüssel-Wert-Paare für flexible Datenverwaltung
Ein und Ausgabe Benutzerinteraktion durch Lesen und Anzeigen von Informationen
Funktionen Wiederverwendbare Code-Blöcke für spezifische Aufgaben
Lambda Kurze anonyme Funktionen für einfache Aufgaben
Listen Geordnete Datensammlungen für flexible Elemente
Modules Wiederverwendbare Code-Einheiten zur Organisation und Strukturierung
Objekte Instanzen von Klassen für Daten und Verhalten
Operatoren Ausführen von Aktionen auf Operanden
Schleifen Wiederholte Ausführung von Code basierend auf Bedingungen
Sets Ungeordnete Sammlungen eindeutiger Elemente
Strings Zeichenfolgen zur Darstellung und Verarbeitung von Text
Syntax, Comments Programmierregeln und -erklärungen für Lesbarkeit
Variablen, Datentypen und Casting Wertezuweisung, Datentypen und Konvertierung

Wissenschaftliches Rechnen (Philipp Kühne, Daniel Martin)

Seite Beschreibung
Python.math Grundlegende mathematische Funktionen und Variablen, die bereits in Python integriert sind
NumPy Routinen und n-dimensionale Arrays
SciPy NumPy-Extension
SymPy NumPy-Extension

Graphical User Interface (Jan Ehlenbröker, Thi Bao Tram La)

Seite Beschreibung
Tkinter Simple GUI-Erstellung
PyQt5 Komplexere GUI-Erstellung
Kivy GUIs mit besserem Support für mobile Geräte
Streamlit GUI für Visualisierung und Analyse von Daten
Gradio GUI für ML Demos

Darstellung (Jan-Philipp Homuth, Jan-Simon Schneider)

Seite Beschreibung
Einführung in Matplotlib Installation und Einrichtung von Matplotlib
Grundlagen des Plottings Achsen, Legenden, Marker & Linienstile
Plottypen Basic, Statistiken, 3D etc.
Subplots und mehrere Achsen Kombinieren verschiedener Plot-Typen und Arbeiten mit mehreren Achsen
Anpassungen und Stilisierung Hintergrundbilder, Gatterlinien, Schriftarten & Autoscaling
Fortgeschrittene Plot-Techniken Daten aus CSV-Dateien, Zeitreihen

Kommunikation (Arvid Wessel, Lars Eugster)

Seite Beschreibung
Einführung in Web APIs Allgemeine Erklärung zur Funktion von Web-APIs
Grundlagen der Netzwerkprogrammierung mit Python Verschiedene Netztwerk-Protokolle und Umgang mit Python Sockets
Aufbau eines einfachen HTTP-Servers in Python Erstellung eines HTTP Servers, sowie verarbeiten und erstellen von HTTP-Anfragen
Entwicklung einer RESTful API mit Python und Flask (FastAPI) Einführung in Flask
Authentifizierung und Autorisierung in Web-APIs Grundlagen der Authentifizierung in Python
Verwendung von Datenformaten in Web-APIs Verwendung von Datenformaten wie JSON,XML und YAML für die API-Kommunikation
Fortgeschrittene Konzepte in der API-Entwicklung Paginierung, Filterung, Caching, Leistungsoptimierung, Webhooks
API-Dokumentation und Testen Erstellen von API-Dokumentation mit OpenAPI/Swagger sowie das Testen von APIs mit Python-Bibliotheken
Deployment und Skalierung von Web-APIs Bereitstellen von APIs, Skalierungstechniken und Fehlerbehebung
Kommunikation über serielle Schnittstellen Unterkapitel für serielle Schnittstellen
Messaging und Queueing in Python Nachrichtenübermittlung und Warteschlangenmanagement

Datenbanken (Elizaveta Bocharnikova)

Seite Beschreibung
Grundlagen von Datenverarbeitung und ‐speicherung Grundlagen der Datenverarbeitung und -speicherung durch Einführung in Dateiformate wie JSON und CSV
Datenbanken und ihre Anwendung Erstellung von Abfragen in Python, Interaktion zwischen Datenbanken und Dateien, Unterschiede zwischen JSON und Datenbanken
Fortgeschrittene Themen in Datenbanken Datenbanktypen, die Geschichte der Datenbanken und Transaktionskonzepte
Datenbankverwaltung und ‐optimierung Grundlagen der Datenbankverwaltung, Indexierung, Administration und Datenbankmigration
Sicherheit, Integration und Qualitätssicherung Datenbankintegration in Webanwendungen, Datenbank-Testing und Qualitätssicherung
Zukunfttrends Einige der Trends in Bereich der Datenbanken, die interessant sein könnten
MySQL Befehle Spickzettel Wichtigste Befehle mit Beispielen und Erklärungen auf einen Blick
Multiple‐Choice‐Test Ein Multiple - Choice - Test mit Lösungen