[Python-de] Mehrdimensionale Listen
Achim Domma (ProCoders)
domma at procoders.net
Wed May 7 15:54:56 EDT 2003
> Das steuerkennzeichen soll zB "M16" sein. Ich bekomme aber die
> Fehlermeldung TypeError: sequence index must be integer
> Wie kann ich das anstellen, dass ich mit "M16" arbeiten kann. Denn dieser
> Wert ist vorgegeben, und darum dreht sich alles.
Du mußt zwischen eine Liste und einem Dictionary unterscheiden. In PHP ist
das gemischt, also so 'ne Art Zwitter. Dein Beispiel müßte in etwa so
(ungetestet aus dem Kopf) aussehen:
steuer = {}
steuer['M16'] = {}
steuer['M16']['nr'] = nummer
steuer['M16']['konto'] = konto
Das Beispiel schreit aber meine Meinung nach nach OO Programmierung. Der
oberer Dictionaire ist vieleicht ok, aber die enthaltenen Element würde ich
in jedem Fall als Klass implementieren. Also sowas wie:
class Kennzeichen(object):
def __init__(self,nr,konto,betrag):
self.nr = nr
self.konto = konto
self.betrag = betrag
und dann:
steuer = {}
steuer['M16'] = Kennzeichen('nr','konto','betrag)
und später z.B.
print steuer['M16'].betrag
Gruß,
Achim
More information about the Python-de
mailing list