Python Online Kurs

1.1 Wie geben wir etwas aus?

In Python kann man sogenannten Funktionen einen Wert mitgeben, mit dem sie arbeiten sollen. print ist eine solche Funktion In Informatik sagen wir: "Wir übergeben der Funktion einen Parameter" allgemein erkennst du Funktionen an folgendem Aufbau: Methodenname direkt gefolgt von einer Klammer, optional mehreren Parametern und einer schließenden Klammer. Also z.B. so: METHODENNAME(Parameter1, Parameter2, ....) Jede Funktion hat eine bestimmmte Aufgabe. print z.B. gibt die ihr übergebenen Parameter in der Konsole aus.

1
print(30)

Console:

Erst Antwort auswählen

Aufgabe:

Überlege dir, was bei diesem Code in der Konsole ausgegeben wird. Klicke es an und Klicke dann auf ausführen. Teilüberlegungen könnten sein: 1. Was macht die Funktion print? 2. Was ist ein Parameter? 3. Was ist der Parameter in diesem Code?

2.1 Variablen Einführung

Variablen sind "Zwischenspeicher" für Inhalte. Python erzeugt Variablen automatisch bei der ersten Verwendung der Variable für dich. Im folgenden Code ist a in Zeile 2 zum Beispiel eine solche Variable. Werden Variablen im Code wiederverwendet, dann fügt Python ihren Wert an dieser Stelle des Programms ein.

1
2
3
4
5
# lies: a wird der Wert 0 zugewiesen
a = 0

# Ausgabe:
print(a)

Console:

Erst Antwort auswählen

Aufgabe:

Überlege dir, welche Ausgabe erzeugt dieser Code. Deine Antwort wird nach dem Ausführen geprüft.

2.2 Variablen Einführung

Wie du schon im vorherigen Beispiel sicher mitbekommen hast, wird Code immer von oben nach unten ausgeführt. Also Erst Zeile 1, dann 2, dann 3 ..... Dies gilt es zu beachten, wenn wir Variablen mehrmals einen Wert zuweisen - wie in diesem Beipsiel -. Dabei gilt immer der zuletzt zugewiesene Wert.

1
2
3
4
5
6
7
# lies: a wird der Wert 48 zugewiesen
a = 48
# lies: a wird der Wert -15 zugewiesen
a = -15

# Ausgabe:
print(a)

Console:

Erst Antwort auswählen

Aufgabe:

Überlege dir, welche Ausgabe erzeugt dieser Code. Deine Antwort wird nach dem Ausführen geprüft.

2.3 Variablen Fehler finden

Im folgenden Code von LernSax haben sich Fehler eingeschlichen. - Keiner Überraschung, aber wir beheben sie besser:

1
2
3
4
name == Förster
Fach = "Informatik"
print(name)
print(fach)

Console:

... Ausführen Klicken für Ausgabe

Aufgabe:

Korrigiere die Fehler: Hinweise erhältst du durch die Ausgabe unter der Konsole 😉. Wenn alles richtig ist, sollte folgendes ausgegeben werden.

2.4 Variablen Aufgabe 1

1
2
a 
print(a)

Console:

... Ausführen Klicken für Ausgabe

Aufgabe:

Weise der Variablen folgenden Wert zu: Bearbeite dafür den bereitgestellten Code. Führe den Code aus, um dein Ergebnis zu überprüfen.

2.5 Variablen Aufgabe 2

In den vorherigen Codebeispielen hast du schon einige Zeilen mit einer Raute (Hashtag) "#" gesehen. Dieses Zeichen leitet einen Kommentar ein, der bei der Ausführung des Codes ignoriert wird. Kommentare dienen der Beschreibung deines Codes, um ihn für andere Entwickler (und dein späteres ich ;) ) verständlicher zu machen.

1
2
3
x = 49
#x = 27
print(x)

Console:

Erst Antwort auswählen

Aufgabe:

Welcher Wert wird ausgegeben?

3.1 Verzweigungen

Selten wird ein Programm einfach Zeile für Zeile von oben nach unten ausgeführt. Oft finden Entscheidungen statt. Schauen wir uns einmal an, wie das in Python funktioniert: Hierfür müssen wir eine neue Vokabel lernen: if ein if wird immer gefolgt von einer Bedingung und einem Doppelpunkt. Ein Beispiel siehst du in der CodeBox unter diesem Text. Der Doppelpunkt ist dabei essentiell, denn er zeigt an, dass der eingerückte Codeblock ausgeführt werden soll, wenn die Bedingung "wahr" ist.

1
2
if 10 < 3:
  print("Wenn die Bedingung wahr ist, werde ich der print-Funktion übergeben")

Console:

Erst Antwort auswählen

Aufgabe:

Welche Ausgabe erzeugt der Code:

3.2 Verzweigungen - mit Else

Wer kennt es nicht noch von früher: "Wenn du dein Zimmer aufräumst, dann bekommst du ein Eis, sonst nicht" "Wenn ..., dann ..., sonst..." das kennt auch der Rechner. "Wenn ..., dann ... " kennen wir schon: "If ... : ..." Fehlt uns noch das sonst: Eine neue Vokabel: else else wird wieder zwingend gefolgt von einem Doppelpunkt. Dieser gibt wieder an, dass der Block nach dem Doppelpunkt ausgeführt werden soll, wenn das Programm in den "sonst" Zweig geht.

1
2
3
4
5
6
7
# lies: Wenn 15 größer 49, dann ...
if 15 > 49:
  print("Ich bin kein Mathegenie")
  
# lies: sonst mache ....
else:
  print("Ich bin ein Mathegenie")

Console:

Erst Antwort auswählen

Aufgabe:

Welche Ausgabe erzeugt der Code:

4.1 Wir verbinden Verzweigungen mit Variablen 1

1
2
3
4
5
6
b = 8 
if b < 49:
  b = 39 
else:
  b = 56
print(b)

Console:

Erst Antwort auswählen

Aufgabe:

Welche Ausgabe erzeugt der Code:

4.2 Wir verbinden Verzweigungen mit Variablen 2

1
2
3
4
5
6
b = 17 
if b > 32:
  b = 47 
else:
  b = 57
print(b)

Console:

Erst Antwort auswählen

Aufgabe:

Welche Ausgabe erzeugt der Code:

5.1 Mehrere Ausgaben in der Konsole

Natürlich können wir nicht nur 1-mal etwas ausgeben. Die "Print"-Funktion kann mehrmals aufgerufen werden. Bei jedem Aufruf wird eine neue Zeile in der Konsole gestartet.

1
2
3
print("Zeile1")
print("Zeile2")
print("Zeile3")

Console:

Erst Antwort auswählen

Aufgabe:

Welche Ausgabe erzeugt der Code:

6.1 Verzweigungen Fehler finden

Im folgenden Code des Apple-Stores haben sich Fehler eingeschlichen:

1
2
3
4
5
alter = 39
Wenn alter < 13:: 
  print("Du darfst leider kein Instagram installieren.")
else 
  print("Du darfst Instagram installieren.")

Console:

... Ausführen Klicken für Ausgabe

Aufgabe:

Korrigiere die Fehler: Hinweise erhältst du durch die Ausgabe unter der Konsole 😉. Wenn alles richtig ist, sollte folgendes ausgegeben werden.

6.2 Verzweigungen Fehler finden

Im folgenden Code für einen Gang-Aufsichts-Roboter 🤖 haben sich Fehler eingeschlichen. Finde alle Fehler!

1
2
3
4
5
klasse = 7
if klasse < 9 
  print("Leider keine Handynutzung")
else 
  print(Du darfst dein Handy nutzen)

Console:

... Ausführen Klicken für Ausgabe

Aufgabe:

Korrigiere die Fehler: Hinweise erhältst du durch die Ausgabe unter der Konsole 😉. Wenn alles richtig ist, sollte folgendes ausgegeben werden.

6.3 Verzweigungen Anwenden

In Deutschland darf man, wenn man 18 oder älter ist, den Autoführerschein 🚘🏁 machen. Schreibe ein Programm, dass z.B. für die Führerscheinstelle automatisch überprüft ob jemand den Autoführerschein bereits machen darf.

1
2
alter = 7
 #Füge hier deinen Code ein.

Console:

... Ausführen Klicken für Ausgabe

Aufgabe:

Wenn man den Führerschein machen darf, soll "Du darfst den Autoführerschein machen" angezeigt werden. Sonst "Du darfst leider keinen Führerschein machen" (Der Text muss 1:1 so ausgegeben werden, achte auf Groß-, Kleinschreibung und Leerzeichen!

7.1 Verschachtelte Verzweigungen

Verzweigungen können auch Teil des Codeblocks einer anderen Verzweigung sein. Für die Ausführung gilt das gleiche wie du bisher gelernt hast.

1
2
3
4
5
6
7
if 5 < 45:
  print("Bedingung 1 ist wahr") 
  if 3 < 33: 
    print("Zusätzlich ist auch noch die zweite Bedingung wahr")
 
else:
  print("Bedingung 1 ist falsch, wir sind im sonst Zweig der ersten Bedingung")

Console:

Erst Antwort auswählen

Aufgabe:

Welche Ausgabe erzeugt der Code:

8.1 Schleifen - Einführung

Oft wollen wir Dinge mehrmals hintereinander bis zu einer bestimmten Abbruchbedingung durchführen. Jede App soll z.B. solange auf Eingaben warten und darauf reagieren, bis sie geschlossen wird. Dies können wir mithilfe von Schleifen realisieren. Eine Schleifenart sind die While-Schleifen Auch hier steht am Ende der Bedingung zur Einleitung des betreffenden Code-Blocks wieder ein Doppelpunkt!!

1
2
3
4
zahl = 0
while zahl < 5:
  print(zahl)
  zahl=zahl+1

Console:

Erst Antwort auswählen

Aufgabe:

Welche Ausgabe erzeugt der Code:

8.2 Schleifen - Einführung

Für die Bedingung können wir wieder alle bekannten Vergleichsoperatoren nutzen: - a größer als b a > b - c kleiner als d c < d - e ist gleich e e == e (Achtung anders als in der Mathe, entspricht "ist gleich mit" 2x =. Da das einfache = der Zuweisung einer Variablen vorbehalten ist.

1
2
3
4
zahl = 49
while zahl == 49:
  print("ausgeführt")
  zahl=zahl+1

Console:

Erst Antwort auswählen

Aufgabe:

Welche Ausgabe erzeugt der Code:

8.3 Schleifen - Einführung

Für die Bedingung können wir wieder alle bekannten Vergleichsoperatoren nutzen: - a größer als b a > b - c kleiner als d c < d - e ist gleich e e == e (Achtung anders als in der Mathe, entspricht "ist gleich mit" 2x =. Da das einfache = der Zuweisung einer Variablen vorbehalten ist.

1
2
3
4
zahl = 5
while zahl > 2:
  print("ausgeführt")
  zahl=zahl-1

Console:

Erst Antwort auswählen

Aufgabe:

Welche Ausgabe erzeugt der Code - Achtung dies mal wird subtrahiert!:

8.4 Schleifen - Einführung

Nachdem wir gesehen haben, was intern in einer Schleife abläuft, sollten wir jetzt auch das Ergebnis nach einem Schleifendurchlauf vorhersagen können.

1
2
3
4
zahl = 0
while zahl < 6:
  zahl=zahl+1
print(zahl)

Console:

Erst Antwort auswählen

Aufgabe:

Welche Ausgabe erzeugt der Code:

8.5 Schleifen - Fehlersuchen

1
2
3
4
zahl = 0
while: zahl < 5
  zahl=zahl+1
print(zahl)

Console:

... Ausführen Klicken für Ausgabe

Aufgabe:

Korrigiere die Fehler: Hinweise erhältst du durch die Ausgabe unter der Konsole 😉. Wenn alles richtig ist, sollte folgendes ausgegeben werden.

8.6 Schleifen - Fehlersuchen

1
2
3
4
zahl = 0
while zahl < 4:
  zahl=zahl+2
  print(zahl)

Console:

... Ausführen Klicken für Ausgabe

Aufgabe:

Korrigiere die Fehler: Hinweise erhältst du durch die Ausgabe unter der Konsole 😉. Wenn alles richtig ist, sollte folgendes ausgegeben werden.

9.1 Array / Feld / (Liste) - Einführung

Sobald wir mehrere Elemente verwalten wollen, z.B. alle Schüler und Schülerinnen der Schule, wird es ineffizient mit einzelnen Variablen zu arbeiten. Dafür enthält Python ein neues Konzept: Das Array (oder auch Feld bzw. Liste genannt) Eine Liste kann in einer Variablen mehrere Werte speichern (In diesem Beispiel heißt die Variabel arr). In eckigen Klammern steht der Index der Liste. (In diesem Code Beispiel 0) Der Index beginnt bei 0 für das erste Element.

1
2
3
arr = ['Max','Inge','Peter','Reiner','Winfried','Sabine'] 
 
print(arr[0])

Console:

Erst Antwort auswählen

Aufgabe:

Welche Ausgabe erzeugt der Code:

9.2 Array / Feld / (Liste) - Einführung

1
2
3
arr = ['Max','Inge','Peter','Reiner','Winfried','Sabine'] 
 
print(arr[1])

Console:

Erst Antwort auswählen

Aufgabe:

Welche Ausgabe erzeugt der Code:

9.3 Array / Feld / (Liste) - Einführung

Manchmal braucht man das letzte Element einer Liste. Dafür bietet Python eine besondere Syntax. Der Index kann auch negativ sein. Dabei steht -1 für das erste Element von hinten.

1
2
3
arr = ['Max','Inge','Peter','Reiner','Winfried','Sabine'] 
 
print(arr[-1])

Console:

Erst Antwort auswählen

Aufgabe:

Welche Ausgabe erzeugt der Code:

9.4 Array / Feld / (Liste) - Einführung

1
2
3
arr = ['Max','Inge','Peter','Reiner','Winfried','Sabine'] 
 
print(arr[4])

Console:

Erst Antwort auswählen

Aufgabe:

Berichtige den Code, sodass Reiner ausgegeben wird.

9.5 Array / Feld / (Liste) - Fehlerfinde

1
2
3
arr = ['Max','Inge','Peter','Reiner','Winfried','Sabine'] 
 
print(arr['Reiner'])

Console:

... Ausführen Klicken für Ausgabe

Aufgabe:

Berichtige den Code, sodass Reiner ausgegeben wird.

9.6 Array / Feld / (Liste) - Fehlerfinde

1
2
3
arr = ['Max','Inge','Peter','Reiner','Winfried','Sabine'] 
 
print(arr[6])

Console:

... Ausführen Klicken für Ausgabe

Aufgabe:

Berichtige den Code, sodass das letzte Element ausgegeben wird.