Aufsummieren aller Elemente einer Liste

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
Horst
User
Beiträge: 37
Registriert: Mittwoch 14. April 2010, 17:55

Hallo,
Ich habe ein Problem. Ich möchte gerne alle Elemente einer Liste aufsummieren, habe allerdings keine ahnung, wie ich das anstellen soll.
Ich würde mich freuen, wenn mir jemand helfen könnte.
Danke schon mal im Voraus.
EyDu
User
Beiträge: 4881
Registriert: Donnerstag 20. Juli 2006, 23:06
Wohnort: Berlin

sum
Das Leben ist wie ein Tennisball.
Horst
User
Beiträge: 37
Registriert: Mittwoch 14. April 2010, 17:55

Hallo EyDu,
Was meinst du mit sum?

bsp:

a = [1,2,3]
print (a.sum())

So gibts eine Fehlermeldung
[/code]
Nocta
User
Beiträge: 290
Registriert: Freitag 22. Juni 2007, 14:13

sum(a) ;)

sum ist eine Funktion, keine Methode von list.
Benutzeravatar
Rebecca
User
Beiträge: 1662
Registriert: Freitag 3. Februar 2006, 12:28
Wohnort: DN, Heimat: HB
Kontaktdaten:

Mal davon abgesehen, dass du immer die Fehlermeldung mitposten solltest: Tippe mal help(sum) in die Konsole ein oder schau in die Doku.
Offizielles Python-Tutorial (Deutsche Version)

Urheberrecht, Datenschutz, Informationsfreiheit: Piratenpartei
Horst
User
Beiträge: 37
Registriert: Mittwoch 14. April 2010, 17:55

Mit sum(a) klappt es sehr gut.
Mein problem geht aber leider noch etwas weiter.
Ich habe hier eine liste , die mit listen gefüllt ist. wie kann ich die inneren listen aufsummieren und in einenr anderen liste ausgeben?

a = [[1,2],[5,6],[7,8]] # Es soll [3,11,15] rauskommen
b = []
for i in a:
b.append(sum(i))
print (b)


Wenn ich das so mache gibt mir Python die ursprüngliche liste 'a' aus.
Weiß jemand, wo mien Fehler ist?
EyDu
User
Beiträge: 4881
Registriert: Donnerstag 20. Juli 2006, 23:06
Wohnort: Berlin

map
Das Leben ist wie ein Tennisball.
Benutzeravatar
/me
User
Beiträge: 3555
Registriert: Donnerstag 25. Juni 2009, 14:40
Wohnort: Bonn

Horst hat geschrieben:a = [[1,2],[5,6],[7,8]] # Es soll [3,11,15] rauskommen
b = []
for i in a:
b.append(sum(i))
print (b)

Wenn ich das so mache gibt mir Python die ursprüngliche liste 'a' aus.
Weiß jemand, wo mien Fehler ist?
Du machst zwei Fehler.

1: Du verwendest beim Posten von Python-Code hier keine Code-Tags. Dadurch werden die für Python relevanten Leerzeichen nicht angezeigt und dein Code ist schwerer zu verstehen.
2: Du gibst uns nicht das Programm, welches die fehlerhafte Ausgabe erzeugt. Der von dir gepostete Code funktioniert bei mir mit Python 2.6 wie gewünscht.

Code: Alles auswählen

>>> a = [[1,2],[5,6],[7,8]]
>>> b = []
>>> for i in a:
	b.append(sum(i))
>>> print b
[3, 11, 15]
Horst
User
Beiträge: 37
Registriert: Mittwoch 14. April 2010, 17:55

Ich hab einen Fehler in der Syntaxfehler gehabt.
Jetzt läufts.
Danke an alle!
Darii
User
Beiträge: 1177
Registriert: Donnerstag 29. November 2007, 17:02

/me hat geschrieben:1: Du verwendest beim Posten von Python-Code hier keine Code-Tags. Dadurch werden die für Python relevanten Leerzeichen nicht angezeigt und dein Code ist schwerer zu verstehen.
Gibt dir keine Mühe, das wurde ihm schon x-Mal von verschiedenen Leuten gesagt, da ist glaube ich Hopfen und Malz verloren.
Benutzeravatar
jbs
User
Beiträge: 953
Registriert: Mittwoch 24. Juni 2009, 13:13
Wohnort: Postdam

EyDu hat geschrieben:map

Code: Alles auswählen

>>> l = [[1,2],[5,6],[7,8]]
>>> map(sum, l)
[3, 11, 15]
>>>
[url=http://wiki.python-forum.de/PEP%208%20%28%C3%9Cbersetzung%29]PEP 8[/url] - Quak!
[url=http://tutorial.pocoo.org/index.html]Tutorial in Deutsch[/url]
Benutzeravatar
/me
User
Beiträge: 3555
Registriert: Donnerstag 25. Juni 2009, 14:40
Wohnort: Bonn

Horst hat geschrieben:Ich hab einen Fehler in der Syntaxfehler gehabt.
Jetzt läufts.
Ein Fehler im Syntaxfehler, aha.

Es bleibt trotzdem dabei: Bitte sende demnächst bei Fragen den richtigen Programmausschnitt mit einer eventuell auftauchenden Fehlermeldung. Copy&Paste sollte bekannt sein, denke ich. Bei einem Syntaxfehler hätte dir das Programm definitiv nicht Liste a ausgegeben, wie du behauptet hast.
Horst
User
Beiträge: 37
Registriert: Mittwoch 14. April 2010, 17:55

Ich weiß auch nicht mehr genau, was genau falsch. Ich hab wieder einiges geändert. Irgendwo ahbe ich mich wohl vertippt
Antworten