Python ist eine weit verbreitete Programmiersprache mit vielen Anwendungsbereichen. Wichtigste Anwendungsgebiete sind «maschinelles Lernen» und Datenanalyse, aber auch in CAD-Programmen wie Blender und FreeCAD ist Python integraler Bestandteil.
Ein Python-Programm besteht aus einer oder mehreren Text-Dateien (normalerweise mit der Endung .py), d.h. Dateien, die nur Buchstaben, Zahlen und Symbole enthalten (und keine Formatierung). Normalerweise sollte man sich auf ASCII-Zeichen beschränken, mittlerweile sind aber auch beliebige Unicode-Zeichen erlaubt.
Ein Programmblock in Python ist ein folge von Zeilen mit gleicher Einrückung. Diese Zeilen werden eine nach der anderen ausgeführt. Normalerweise wählt man die Einrückungen als Vielfache von 4 Leerschlägen. Aber auch eine andere Anzahl oder Tabulatoren sind möglich.
Wiederholungen (for
oder while
), Bedingte Ausführung (if
) oder Unterprogramme und Funktionen (def
) beginnen Unterblöcke. Am Ende einer solchen Zeile steht immer ein Doppelpunkt :
print("Erster Block") a=5 print(f"Immer noch erster Block mit a={a}") if a==4: print("Neuer Unterblock") a=7 print("Ende Unterblock") print(f"Das gehört noch zum ersten Block! Und a={a}")
Testen Sie obiges Python-Programm. Ändern Sie den Wert der Variablen a
in der zweiten Zeile zu 4 und testen Sie erneut.
Ist die Anzahl Wiederholungen bekannt, wir meist range
verwendet:
for i in range(5): print(f"range(5): Jetzt ist i={i}") for i in range(10,14): print(f"range(10,14): Jetzt ist i={i}") for i in range(20,30,4): print(f"range(20,30,4): Jetzt ist i={i}")
siebzehn.py
das alle zweistelligen, durch 17 teilbare Zahlen ausgibt.quadratzahlen.py
das alle Quadratzahlen von $1^2$ bis $400=20^2$ ausgibt, und zwar in der Form0^2=0 1^2=1 2^2=4 3^2=9 4^2=16 ...
Ist eine Liste gegeben, kann ein Programmblock für jedes Element wiederholt werden:
giftig = ["Grüner Knollenblätterpilz", "Orangefuchsiger Rauhkopf", "Lorchel", "Gifthäubling", "Mutterkorn", "Tigerritterling"] for fingerweg in giftig: print(f"{fingerweg}? Finger weg!") for symbol in "Hallo Welt!": print(symbol) for zahl in [2,3,5,7,11,13,17,19,23,29,31]: print(f"{zahl} ist prim.")
Speichern Sie obigen Code in einer Datei mit Namen forinlist.py
und testen Sie das Programm.
Wiederholen solange (while) eine Bedingung wahr ist.
a = 7.0 q = 345.0 while a*a<q: print(f"{a} ist noch kleiner als die Wurzel von {q}") print(f"{a} ist grösser oder gleich der Wurzel von {q}")
Speichern und testen Sie folgendes Programm:
q = 2.0 genau = 0.00000001 w = 0.0 s = q/2 while s>genau: while w*w<q: w = w+s w = w-s print(w) s = s/2;
Was genau macht das Programm? Wie macht es das? Warum funktioniert das?
a = [0, 3, 4, 2, 1] b = [4, 2, 1, 3, 0] c = [2, 4, 3, 0, 1] print(f"a[b[c[0]]] = {a[b[c[0]]]}") print(f"a[b[c[1]]] = {a[b[c[1]]]}") print(f"a[b[c[2]]] = {a[b[c[2]]]}") print(f"a[b[c[3]]] = {a[b[c[3]]]}") print(f"a[b[c[4]]] = {a[b[c[4]]]}")