BICS
Informatik Sek II
Objektorientiertes Programmieren

Python
LFB.-Kurs
W. Arnhold
[ Übersicht | vorige Seite | nächste Seite | Ganz unten ]
Python Python - Syntax  -  Dictionaries

Dictionaries

Es gibt in Python keine reinen Reihungen und auch nicht direkt das Konzept# des Verbundes. Verbunde werden am ehesten durch Dictionaries realisiert, nur dass diese viel großzügiger sind. Man kann sie sich als Verbunde vorstellen, deren Elementnamen noch existieren.

Ein Dictionary ist eine Menge von Paaren "Schlüssel: Wert". Weder die Schlüssel, noch die Werte müssen vom gleichen Typ sein. Als Wert kann jeder Typ vorkommen, als Schlüssel jeder unveränderliche Typ (also keine Listen und# Dictionaries selbst), auch (so gut wie) keine Klassenobjekte.

dict1 = {}      # ein leeres Dictionary
dict2 = {
    1: 'eins',
    'II': 2,
    3.0 : [[], [], []]
}

print dict1
print dict2
Einem bestehenden Dictionary kann man durch Angabe des Schlüssels den entsprechenden Wert entlocken
print dict2[1]
und genauso auch neue Werte hinzufügen (man könnte auf diese Art auch bestehende Werte überschreiben).
dict2['4'] = (1, 2, 3, 9)
dict2['II'] = '--'
print dict2
Die Elementepaare eines Dictionaries haben keine feste Reihenfolge.

Der lesende Zugriff über nicht existente Schlüssel erzeugt eine Ausnahme.
Man kann aber die Existenz des Schlüssels vorher prüfen:

if dict2.has_key(1):
    print 'Den Schlüssel 1 gibt es.'
So erhält man die Liste aller Schlüssel:
print 'Die Liste aller Schlüssel:', dict2.keys()
und so die Liste aller Werte (nicht notwendigerweise in der gleichen Reihen- folge)
print 'Die Liste aller Werte:', dict2.values()
So bekommt man beides Zusammen als Liste von Tupeln (Schlüssel, Wert)
print 'Die Liste der Schlüssel-Wert-Paare:', dict2.items()
Außerdem kann man ein Dictionary leeren, kopieren, zwei mischen.

[ Übersicht | vorige Seite | nächste Seite | Ganz oben ]

©   W. Arnhold Oktober 2000