Listen

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
taxusbaccata
User
Beiträge: 3
Registriert: Dienstag 4. März 2014, 14:26

Wie kann man in einer Liste der Länge X alle Elemente in dieser Liste mithilfe einer for-Schleife multiplizieren ?
mutetella
User
Beiträge: 1695
Registriert: Donnerstag 5. März 2009, 17:10
Kontaktdaten:

Code: Alles auswählen

[element * multiplier for element in elements]
Wenn Du selbiges mit einer for-Schleife lösen möchtest, musst Du halt noch `append()` einsetzen.

mutetella
Entspanne dich und wisse, dass es Zeit für alles gibt. (YogiTea Teebeutel Weisheit ;-) )
taxusbaccata
User
Beiträge: 3
Registriert: Dienstag 4. März 2014, 14:26

Ich meine das so, dass ich alle Elemente dieser Liste multipliziere ...
Also z.B.: L = [1,2,3,7] -----> 1*2*3*7
mcdwerner
User
Beiträge: 113
Registriert: Donnerstag 7. Juli 2011, 14:27

das wäre dann ein Fall für reduce:

Code: Alles auswählen

reduce(lambda x, y: x*y, [1,2,3,7])
Edit:
Oh sorry, for-Schleife war gefragt.

Code: Alles auswählen

result = 1
for multiplier in [1,2,3,7]:
    result = result * multiplier
Benutzeravatar
snafu
User
Beiträge: 6908
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

`reduce()` ginge übrigens auch ohne Lambda:

Code: Alles auswählen

>>> from operator import mul
>>> reduce(mul, [1,2,3,7])
42
taxusbaccata
User
Beiträge: 3
Registriert: Dienstag 4. März 2014, 14:26

Okey, vielen Dank :lol:
Antworten