Zum Hauptinhalt springen

Variablen sind Boxen mit Namen

Warum brauchen wir das?

Stell dir ein Spiel vor. Du hast Punkte. Das Programm muss sich merken:

  • Wie viele Punkte hast du jetzt?
  • Wie heißt die Spielerin?
  • In welchem Level bist du?

Ohne Speicher müsstest du jede Information in jeder Zeile neu hinschreiben. Das wäre umständlich und fehleranfällig.

Computer merken sich Werte in Speicherplätzen.
In Python geben wir diesen Plätzen Namen. Solche benannten Speicherplätze heißen Variablen.

Mit Variablen kannst du:

  1. einen Wert speichern,
  2. ihn später wieder lesen,
  3. ihn verändern (nächste Lektion),
  4. damit rechnen und Sätze bauen.

Definition: Was ist eine Variable?

Definition:
Eine Variable ist ein Name für einen gespeicherten Wert.
Der Name ist wie ein Etikett. Der Wert ist der Inhalt.

Alltagsbild:

AlltagsdingIn Python
Schublade mit Aufkleber „Stifte“Variable stifte
Inhalt: 7 StifteWert 7
Aufkleber lesenden Namen im Code benutzen
Inhalt anschauenprint(stifte)

Wichtig: Der Name beschreibt idealerweise, was gespeichert ist. punkte ist klarer als x.

Luna, Py und die Punkte-Box

Im Code-Club baut Luna ein Punktespiel.

„Py, merke dir bitte: Ich habe 10 Punkte.“

Py holt eine unsichtbare Box, klebt ein Etikett drauf:

┌─────────────┐
│ punkte │ ← Name (Etikett)
│─────────────│
│ 10 │ ← Wert (Inhalt)
└─────────────┘

Lily erklärt: „Wenn wir print(punkte) schreiben, schaut Python in die Box mit dem Namen punkte und zeigt den Inhalt.“

Buggy flüstert: „Schreib print("punkte") mit Anführungszeichen – dann zeige ich nur das Wort, nicht den Inhalt. Hihi.“

Neue Wörter

Variablevariable

Ein Name fuer einen gespeicherten Wert. Wie eine Box mit Etikett.

Wertvalue

Die Information in der Variable, z. B. die Zahl 10 oder der Text Luna.

Zuweisungassignment

Der Vorgang, einen Wert unter einem Namen zu speichern: name = wert.

Ausdruck lesenevaluate / read

Wenn du den Namen ohne Anfuehrungszeichen benutzt, holt Python den gespeicherten Wert.

Definition: Was ist eine Zuweisung?

Definition:
Eine Zuweisung speichert den Wert rechts unter dem Namen links.

punkte = 10
SeiteRolle
links punkteName der Variable
=„speichere“ (nicht „ist gleich“ wie in Mathe!)
rechts 10der Wert, der gespeichert wird

Mathe vs. Python – ein häufiger Irrtum

In der Mathematik bedeutet = oft: „links und rechts sind gleich.“

In Python bedeutet = bei Anfängern fast immer:

Nimm den Wert rechts und speichere ihn unter dem Namen links.

Später lernst du Vergleiche mit == („ist gleich?“).
Heute: ein = speichert.

Erstes Beispiel – Schritt für Schritt

punkte = 10
print(punkte)

Ausgabe:

10

Zeile 1: speichern

  1. Python liest punkte = 10.
  2. Es legt (oder füllt) die Variable punkte.
  3. Der Wert 10 liegt darin.

Zeile 2: anzeigen

  1. Python liest print(punkte).
  2. Es sieht keine Anführungszeichen um punkte.
  3. Deshalb holt es den Inhalt der Variable.
  4. Es zeigt 10 an.

Vergleich: Name vs. Text

punkte = 10
print(punkte) # Inhalt: 10
print("punkte") # Text: das Wort punkte
CodeBedeutung
punkteVariable – schau in die Box
"punkte"Text – zeige genau diese Buchstaben

Zweites Beispiel – Text speichern

Variablen können auch Text speichern:

name = "Luna"
print(name)
print("Hallo")
print(name)

Ausgabe:

Luna
Hallo
Luna

Hier liegt in der Box name der Text Luna.
Texte stehen in Anführungszeichen – beim Speichern des Wertes.
Beim Namen der Variable stehen keine Anführungszeichen.

Was passiert im Computer? (Mentales Modell)

Stell dir den Speicher als viele beschriftete Fächer vor:

  1. Bei name = "Luna" sucht Python das Fach name (oder legt es an).
  2. Es legt den Wert "Luna" hinein.
  3. Später, bei print(name), geht es zum Fach name.
  4. Es liest den aktuellen Inhalt und gibt ihn aus.

Python rät nicht, was du meintest.
Es folgt dem Namen, den du wirklich geschrieben hast.

Häufige Irrtümer

IrrtumRichtig
= bedeutet „ist gleich“ wie in Mathe= speichert (Zuweisung)
print("punkte") zeigt den PunktestandDas zeigt nur das Wort
Variable und Wert sind dasselbeName ≠ Inhalt
Man muss die Variable vor print nicht anlegenDoch – sonst NameError

Probiere es selbst

Experiment 1 – Zahl

leben = 3
print(leben)

Ändere 3 zu 5 und starte erneut.

Experiment 2 – dein Name

spieler = "Luna"
print(spieler)

Ersetze Luna durch deinen Namen.

Experiment 3 – zwei Boxen

name = "Lily"
punkte = 12
print(name)
print(punkte)

Experiment 4 – Buggys Falle

punkte = 10
print("punkte")
print(punkte)

Erkläre den Unterschied in einem Satz.

Fehlerdetektiv

print(leben)
Lösung anzeigen

Die Variable leben wurde nie erzeugt.
Python kennt keinen Speicherplatz mit diesem Namen → NameError.

Richtig:

leben = 3
print(leben)

Übungen

Level 1 – Entdecken

Speichere die Zahl 7 in der Variable glueckszahl und gib sie aus.

Tipp

Zuerst zuweisen, dann print mit dem Namen ohne Anführungszeichen.

Lösung
glueckszahl = 7
print(glueckszahl)

Level 2 – Anwenden

Erstelle:

  • spieler mit deinem Namen (Text)
  • level mit der Zahl 1

Gib beide untereinander aus. Schreibe davor eine Zeile print("Status:").

Lösung
spieler = "Luna"
level = 1
print("Status:")
print(spieler)
print(level)

Level 3 – Knobeln

Baue einen Mini-Steckbrief nur mit Variablen und print:

  • Name
  • Alter
  • Lieblingsfarbe

Zusatz: Erkläre in Kommentaren, was Variable und was Wert ist.

Beispiel-Lösung
# Variable "name" speichert den Wert "Py"
name = "Py"
alter = 3
farbe = "gruen"

print("Name:")
print(name)
print("Alter:")
print(alter)
print("Farbe:")
print(farbe)

Mini-Challenge

Erstelle die Variablen held, energie und ort.
Gib einen Statusbericht in drei Zeilen aus.

Erkläre einer Person: Was ist der Unterschied zwischen dem Namen und dem Wert?

Zusammenfassung

  • Eine Variable ist ein Name für einen gespeicherten Wert.
  • Der Wert ist der Inhalt (Zahl, Text, …).
  • Eine Zuweisung name = wert speichert rechts unter dem Namen links.
  • = ist hier „speichern“, nicht „mathematisch gleich“.
  • print(name) zeigt den Inhalt, print("name") zeigt das Wort.
  • Vor dem Benutzen muss die Variable existieren.

Mini-Quiz

Mini-QuizWas macht der Code punkte = 10?
Mini-QuizWas zeigt print(punkte), wenn punkte = 5 gesetzt wurde?
  1. Was ist ein Wert?
  2. Warum schreibt man den Variablennamen ohne Anführungszeichen, wenn man den Inhalt will?
  3. Was passiert, wenn die Variable noch nicht existiert?
  4. Erkläre den Unterschied zwischen = in Mathe und = in Python (Anfänger-Zuweisung).
Lösungen zu den offenen Fragen
  1. Die gespeicherte Information in der Variable.
  2. Damit Python den Inhalt der Box holt, nicht den Text.
  3. NameError – unbekannter Name.
  4. In Mathe oft Gleichheit; in Python speichert = den rechten Wert unter dem linken Namen.

Boxen stehen! Als Nächstes lernst du, wie du den Inhalt einer Variable veränderst.