Station - Blick hinter die Kulissen von Python

Datenverwaltung in Python

Daten werden in Python mit Objekten verwaltet. Was man in der Informatik unter Objekten versteht, wird in einem eigenen Kapitel erläutert. Hier reichen vorerst die folgenden Informationen.

Jedes Datenobjekt in Python hat eine Identitätsnummer, einen Typ und einen Wert. Ein Datenobjekt zur Zahl 2 könnte etwa wie folgt strukturiert sein:

Datenobjekt

Die Identitätsnummer ist die Adresse des Objekts im Speicher. Sie ist also eine Zahl, mit der man ein Datenobjekt eindeutig identifizieren kann.

Der folgende Python-Dialog zeigt, wie man Identitätsnummer, Typ und Wert eines Datenobjekts bestimmt.

>>> id(2)
505300136
>>> type(2)
<class 'int'>
>>> 2
2

Aufgabe 1

Probiere das selbst - auch mit anderen Daten - aus.

Variablen in Python

Variablen dienen dazu, Daten zu verwalten. Eine Variable ist ein Name, der in Python (in der Regel) mit einem Datenobjekt verknüpft ist. Die Verknüpfung wird durch einen Verweis (Referenz) auf die Speicheradresse des Datenobjekts hergestellt.

Variable

Der folgende Python-Dialog zeigt, wie man Identitätsnummer, Typ und Wert des von einer Variablen verwalteten Datenobjekts bestimmt.

>>> id(2)
505300136
>>> zahl = 2
>>> id(zahl)
505300136
>>> type(zahl)
<class 'int'>
>>> zahl
2

Aufgabe 2

Probiere das selbst - auch mit anderen Daten - aus. Was fällt hier auf?

Zuweisungen in Python

Zuweisungen dienen dazu, den Wert einer Variablen (neu) festzulegen. Eine Zuweisung erzeugt einen Verweis von der betreffenden Variablen zu einem Datenobjekt mit dem gewünschten Datenwert.

Interessante Situationen entstehen, wenn mehrere Variablen denselben Datenwert haben.

>>> a = 2
>>> id(a)
505300136
>>> b = a
>>> id(b)
505300136

Bei der Zuweisung b = a wird hier die Variable b an das Datenobjekt gebunden, auf das bereits die Variable a verweist.

Variable

Auch wenn zwei Variablen denselben Wert haben, müssen sie nicht auf dasselbe Datenobjekt verweisen.

>>> a = "Test"
>>> b = "Test"
>>> id(a)
27764768
>>> id(b)
27757280

Hier erzeugt Python zwei verschiedene Datenobjekte mit demselben Wert.

Variable

Die Auswertung einer Zuweisung in Python lässt sich wie folgt beschreiben:

Erst wird der Wert des Terms (auf der rechten Seite der Zuweisung) mit Hilfe des aktuellen Variablenzustands ermittelt. Dann wird ein Datenobjekt mit diesem Wert an die Variable (auf der linken Seite der Zuweisung) gebunden. Dieses Datenobjekt kann ein bereits existierendes Datenobjekt sein oder ein neu erzeugtes. Python entscheidet nach internen Strategien, welche Version günstiger ist. Je nach Programmablaufsituation können gleiche Zuweisungen durchaus zu unterschiedlichen Datenobjektkonstellationen führen. Entscheidend ist nur, dass der Variablen ein Datenobjekt zugeordnet wird, das den gewünschten Datenwert hat.

Aufgabe 3

Führe entsprechende Experimente mit Zuweisungen selbst durch.

X

Fehler melden

X

Suche