.. meta:: :description: In diesem zweitägigen Training kommt es regelmäßig vor, dass Teilnehmer am zweiten Tag sinnvoll programmieren und Probleme lösen :keywords: schulung, training, raspberry, programming, python, introduction, einführung, datentype, datatype, dictionary, list, tuple, mutable, immutable, function, class, exception, batteries, string, encoding, file Python Grundlagen ================= .. sidebar:: Kursdaten .. csv-table:: Anfrage, training@faschingbauer.co.at Dauer, 2 Tage **Unterlagen** .. csv-table:: :doc:`Topics `, :doc:`/trainings/material/soup/python/index` PDF Slides (obsolete), :download:`Python ` Python ist einfach zu erlernen und bietet mit seiner Standardlibrary einen üppig ausgestatteten Werkzeugkasten - man kann in null komma nichts mächtige Programme schreiben. Verglichen mit anderen Sprachen stösst man erst sehr spät an eine Grenze, die es überall gibt: **Wartbarkeit**. Der Kurs vermittelt den grundlegenden Sprachinhalt von Python und beinhaltet alles, was für einen leichten Einstieg notwendig ist. Zielpublikum ------------ Der Kurs richtet sich an alle, die nicht die zwingende Notwendigkeit verspüren, Aufgaben in anderen Sprachen zu lösen. C und C++ würde man zum Beispiel aus Performance- oder historischen Gründen wählen; C#, wenn man an das Microsoft-Universum gebunden ist; Java ist eine Mischung aus den letzteren beiden. Gebucht wird der Kurs auch gerne von Gruppen, deren Hauptaufgabe *nicht* Programmierung ist, wie zum Beispiel Testingenieure oder IT-Personal. Kursinhalt ---------- * **Variablen und Datentypen** * *Numerische Datentypen* wie Integer, Floating Point, Boolean, ... * *Sequentielle Datentypen* wie Listen, Tupel, Strings, ... * *Indexing*, *Slicing* und weitere Operationen auf sequentiellen Typen * *Assoziative Datentypen* wie Dictionaries und Sets ... * *Mutable* versus *immutable* * **Kontrollkonstrukte** * *Verzweigung* mit ``if`` * *Schleifen* mit ``while`` * *Iteration*, ein Gustostückerl in Python - das ``for`` Statement * **Funktionen** * *Definition* und Motivation * *Parameter*, positionell, benamst, default, ... * *Returnwerte* * **Exception Handling** * *Die Exception-Hierarchie* der Standard Library * *Definieren eigener Exceptions* * *Verursachen und Reagieren* * **Strings** - Weiterführendes * *Methoden*. Strings können sehr viel * *Formatierung* * *Encoding*. Hier liegen die grossen Unterschiede zwischen Python 2 und Python 3. * **File-I/O** * *Erstellen, Schreiben, und Lesen* von Dateien * *Encoding* Empfohlene Vorkenntnisse ------------------------ * Etwas Programmiererfahrung