[Python-de] "Arrays bzw Listen?

Diez B. Roggisch deets at web.de
Fre Jul 22 14:30:45 CEST 2005


Stefan Miefert wrote:
> Hallo,
> 
> wenn ich DB Abfragen mit Python erstelle erhalte ich  als Ergebnis z.B.
> 
> row["meinwert"]
> 
> Var
> 
> Wie kann ich sowas selbst "definieren?

Die Frage ist "was ist denn sowas" - und die Antwort liefert python selbst:

 >>> type(row)
<type 'dict'>

Was du suchst ist ein dictionary, auch hash oder map genannt. Anlegen 
kann man das auf  vielfältige Weise, zB so:

leer = {}
was_drin = {"foo" : "bar"}
leer_alternativ = dict()
was_drin_alternativ = dict(foo="bar")
nochmal_was_drin = dict([("foo", "bar")])

Ich empfehle dir im übrigen wärmstens das python-tutorial - da werden 
grundlegende Datentypen behandelt.

Und in C gibt es sowas übrigens nicht! Da gibts Arrays, aber die haben 
_ausschlieslich_ numerische indizes. Und das klappt ja auch mit python 
listen:

 >>> [1,2,3][1]
2

Last but not least: die unglaubliche, schreckliche und hanebüchene 
Array/Map/Iterator-Mixtur die PHP "array" nennt verbannst du am besten 
ASAP aus deinem Gedächtnis. Dieses "Ding" wirft eine solche Menge 
verschiedener Konzepte in einen sehr dreckigen Topf und lässt das Ganze 
dann auch noch anbrennen - das ist für den Programmiergeschmackssinn 
tödlich! Das meine ich sehr ernst!

MfG Diez