alphabet = ["B","C","X","D","Z","F","G","I","J"]. Korrigiere die Liste, indem du mit den entsprechenden Funktionen:
likeable_football_clubs = ["bvb", "liverpool", "st. gallen", "bayern", "freiburg", "breitenrain"]
[68, 71, 53, 34, 66, 55, 80, 93, 24, 49, 68, 73, 9, 8, 93, 22, 44, 11, 82]
for-Schleife.
while-Schleife.
liste_anzahl(liste,x): Nimmt eine Liste liste und eine Zahl oder einen String x entgegen. Die Funktion bestimmt dann, wie oft das Element x in liste vorkommt und gibt diese Anzahl zurück.
liste_max(liste): Bestimmt das grösste Element einer Liste und gibt dieses zurück.
liste_min(liste): Ähnlich wie liste_max(liste), gibt aber das kleinste Element zurück.
Für die Liste numbers = [3,1,5,4,9,4,8,3,1,2,4,9] und die Aufrufe
print(liste_anzahl(numbers, 3)), print(liste_max(numbers)) und print(liste_min(numbers))
ist der Output 2, 9 und 1.
mittelwert(numbers), welcher eine Liste mit Zahlen übergeben wird. Von diesen Zahlen wird dann der Mittelwert berechnet und zurückgegeben. Übergibt man zum Beispiel eine Liste mit Schulnoten, so erhält man den Notendurchschnitt zurück. Zeige den Durchschnittswert dann in einem formatierten String an, z.B. "Der Mittelwert ist 4.46".
liste_haeufigste(liste): Gibt eine Liste zurück, die alle Elemente enthält, die am häufigsten vorkommen. Neben dieser Liste wird auch eine Zahl ausgegeben, die angibt, wie oft diese Elemente in der Liste vorkommen.
repeat 4:
fritz.forward(150)
fritz.right(90)
Genau das Gleiche kann man auch mit einer *for*-Schleife erreichen:
for i in range(4):
fritz.forward(150)
fritz.right(90)
Doch es gibt einen grossen Unterschied:
In der for-Schleife hat man eine Variable (hier `i`), die in jedem Durchlauf einen anderen Wert hat:
Im ersten Durchlauf den Wert 0, im nächsten 1, dann 2 und im letzten 3.
** Quiz:**
* Was ist der Output des folgenden Codeblocks?
from turtle import *
fritz = Turtle()
for j in range(30):
fritz.forward(j*10)
fritz.left(90)
* Überlege dir zuerst, wie die Figur aussieht. Stelle eine Vermutung auf.
* Implementiere nun den Code (Selbst tippen, nicht copy-paste!) und überprüfe deine Vermutung. Hattest du recht?
* Modifiziere nun deinen Code so, dass der Abstand zwischen den Linien (a) enger oder (b) grösser wird.
while-Schleife um:
for i in range(4,12):
print(i)
for-Schleife (max. 2 Zeilen) um:
i = 10
while i < 29:
print(i)
i = i + 3
Finde den Index (die Position) von "Bebraham" in der folgenden Liste. Nutze eine for ... in range Schleife, bei der die range über die Länge der Liste geht.
['Cebraham', 'Debraham', 'Bebraham', 'Abraham']
Zusatzaufgabe: Schreibe eine Funktion suchen(l, query) die in einer beliebigen Liste l nach dem Element query sucht und dessen Index zurückgibt!
Teil 1: Schreibe eine Funktion reihensumme(), die die Summe aller Zahlen der Siebnerreihe zurückgibt, also 7 + 14 + 21 + … + 63 + 70 = 385.
Verwende dazu eine for zahl in range(...) Schleife.
Teil 2: Ändere die Funktion so, dass der Teiler über ein Funktionsargument gewählt werden kann.
Der Aufruf reihensumme(5) soll beispielsweise die Summe der Fünferreihe von 5 bis 50 berechnen und 275 zurückgeben.
Der Aufruf ohne Argument soll weiterhin die Siebnerreihe addieren.
Schreibe eine Funktion umdrehen(liste), die eine neue Liste erstellt und die Elemente von liste in umgekehrter Reihenfolge darin abspeichert und die umgekehrte Liste zurückgibt. Die eingebauten Funktionen reverse und reversed dürfen nicht benützt werden - verwende stattdessen eine negative Schrittweite für range.