Für den Einstieg in die Programmierung mit Python bietet sich die Seite Computer Science Circles an.1) Sie enthält ein schönes deutsches Tutorial mit interaktiven Übungen zum Erlernen der Programmiersprache. Ein Spickzettel zum Ausdrucken hilft bei den Übungen. Die Aufgaben können direkt auf der Seite in einem interaktiven Interpreter erledigt werden.
Kapitel | Inhalt | Anmerkungen |
---|---|---|
0 | Hallo Welt | Grundsätzliche Nutzung des Online-Python-Interpreters, print |
1 | Variablen | |
1E | Fehler | Syntaxfehler, Logische Fehler, Laufzeitfehler |
Übung: Beschreibe in eigenen Worten: „Syntaxfehler“, „Laufzeitfehler“, „logischer Fehler“. | ||
2 | Funktionen | Argumente/Parameter, Rückgabewert, Beispiele: print, min, max , Verketten von Funktionsaufrufen, z.B. min(max(13, 7), 9) |
2X | Zusätzliche Übungen (optional) | keine neuen Inhalte, sondern komplexere Übungen |
Kapitel | Inhalt | Anmerkungen |
---|---|---|
3 | Kommentare und Anführungszeichen | Kommentare: #, Anführungszeichen alternativ einfaches oder doppeltes Hochkomma, Maskierung von Anführungszeichen durch \' oder \„ |
4 | Typen | Datentypen str, int, float , * -Operator für Zeichenketten, z.B. „MA“ * 2, Typumwandlung mit int(..), float(..), str(..) |
5 | Eingabe | input , Rückgabetyp der Input Funktion ist „str“ |
Kapitel | Inhalt | Anmerkungen |
---|---|---|
6 | if | if-Anweisungen, Einrücken von Blöcken, Vergleichsoperatoren <, <= , Datentyp bool, Konstanten True und False, Logische Operatoren != und == |
6D | Design, Debugging und Donuts | Entwurf und Testen von Algorithmen |
Kapitel | Inhalt | Anmerkungen |
---|---|---|
7A | Zeichenketten bzw. Strings | Länge einer Zeichenkette: len(s) , Zugriff auf einzelne Zeichen über index, z.B.: s[0] , Teilstrings mit s[start:ende] , Zeichenketten verbinden mit + und Vervielfachen mit *, Zeichen ↔ Unicode-Position mit ord() und chr() |
7B | Mathematik | Operatoren **, //, %, Modul math, Funktionen sqrt(), exp(), log(), sin(), cos(), tan(), pi |
7C | Schleifen | while-Schleifen, for-Schleifen, break, continue (break und continue sollten sehr sparsam eingesetzt werden, da sie den Code meist unübersichtlicher machen.) |
Achtung! Reihenfolge geändert.
Kapitel | Inhalt | Anmerkungen |
---|---|---|
9 | Fälle & Logik | else, elif, and, or, not |
8 | Remix (optional) | keine neuen Inhalte, sondern Übungen (teilw. schwierig) |
Kapitel | Inhalt | Anmerkungen |
---|---|---|
10 | def | Funktionen definieren und aufrufen, Rückgabewerte, mehrere Parameter |
11A | Kleinbuchstaben | Übung zum Umwandeln von Zeichenketten mit selbst definierten Funktionen |
11B | Geltungsbereich von Variablen | In einer Funktion darf man nie lesend oder schreibend auf eine Variable außerhalb der Funktion zugreifen. Dafür werden Parameter und Rückgabewerte genutzt. globale / lokale Variablen |
Kapitel | Inhalt | Anmerkungen |
---|---|---|
13 | Listen (Arrays) | Erzeugung von Listen durch [element1, …, elementn], Zugriff auf Elemente über deren Index, z.B. liste[0], len(liste), Verketten und Vervielfachen von Listen durch + bzw. *, Negative Indizes für Zugriff vom Ende der Liste aus, max(liste) und sum(liste), for element in liste: … |
14 | Methoden | Achtung: Die Übung „Exact Postage“ geht von einer Postleitzahl mit genau 6 Stellen aus (bis auf Leerzeichen), Listenmethoden wie z.B. index(x), count(x), append(x), insert(i, x), extend(liste), remove(x), pop(x), pop(), reverse(), sort(), x in liste zum Überprüfen, ob Element in Liste vorhanden ist, „Slices“ mit [start:ende:step] analog zu Zeichenketten |