[Python-de] Arrays vorallokieren

René Liebscher R.Liebscher at gmx.de
Wed Mar 26 12:16:26 EST 2003


"python-welt.de" schrieb:
> 
> machs so:
> 
> l = [False] * 5
> m = map(lambda x: [x]*5, l)

Ist das nicht dasselbe wie

m = [[False]*5]*5


MfG
Rene


> 
> Gruss Steffen
> 
> ----- Original Message -----
> From: "Marcus Geiger" <bwolf-sender-f10e71 at antbear.org>
> > Hi,
> >
> > in bestimmten Situationen finde ich es notwendig eine Liste mit einer
> > vordefinierten Anzahl Elementen zu initialisieren.
> > Um z.B. eine Liste mit 5 False Elementen zu erhalten:
> >
> >     l = [False] * 5
> >
> > Stutzig macht mich die etwas umstaendliche Notation fuer geschachtelte
> > Listen:
> >
> >     # 5x5 matrix, False
> >     m = [False] * 5
> >     for u in range(0, len(m)):
> >         m[u] = [False] * len(m)
> >
> >     # alternativ
> >     size = 5
> >     m = [[e] * size for e in [False] * size]
> >
> > Momentan bevorzuge ich die etwas kompaktere List-comprehension
> > (Geschmacksache).
> >
> > Habt Ihr evtl. andere/bessere Vorschlaege?
> >
> > bwolf




More information about the Python-de mailing list