[Python] Een complete list optellen

Pagina: 1
Acties:
  • 4.160 views sinds 30-01-2008
  • Reageer

Acties:
  • 0 Henk 'm!

  • MaiorDomus
  • Registratie: Maart 2003
  • Laatst online: 26-06 18:09
Ik zit met python met een list met een hele zooi getallen. Ik wil graag al deze getallen bij elkaar optellen maar heb geen idee hoe ik dat moet doen?
ik ben al druk aan het zoeken geweest naar aggregate sum up add en weet ik wat nog meer,
maar ik vind hier geen commando voor...
die moet er toch wel zijn?

Ik vroeg me af of iemand me hier aub mee kon helpen.

Acties:
  • 0 Henk 'm!

Anoniem: 58567

sum() doet het gewoon hoor:
code:
1
2
>>> sum([1,2,3,4,5,6])
21

Acties:
  • 0 Henk 'm!

  • Robtimus
  • Registratie: November 2002
  • Laatst online: 26-06 20:16

Robtimus

me Robtimus no like you

Beetje basic:
Python:
1
2
3
4
5
def sum(l):
    count = 0
    for i in l:
        count += i
    return count


Edit: ah kijk, nog built-in ook zelfs

[ Voor 16% gewijzigd door Robtimus op 11-01-2006 21:05 ]

More than meets the eye
There is no I in TEAM... but there is ME
system specs


Acties:
  • 0 Henk 'm!

  • MaiorDomus
  • Registratie: Maart 2003
  • Laatst online: 26-06 18:09
Anoniem: 58567 schreef op woensdag 11 januari 2006 @ 21:01:
sum() doet het gewoon hoor:
code:
1
2
>>> sum([1,2,3,4,5,6])
21
als ik dat doe krijg ik dit :? :

sum([spreidinglist])
TypeError: unsupported operand type(s) for +: 'int' and 'list'

heb die al geprobeerd maar dacht dat ik dus maar wat anders moest zoeken als mijn list unsupported was?

dit is ook maf:

>>> listone = [2,3,4]
>>> sum([listone])
Traceback (most recent call last):
File "<pyshell#3>", line 1, in ?
sum([listone])
TypeError: unsupported operand type(s) for +: 'int' and 'list'


wel zelfde foutmelding..

[ Voor 27% gewijzigd door MaiorDomus op 11-01-2006 21:35 ]


Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 23-06 13:51

NMe

Quia Ego Sic Dico.

Ik ken geen Python, maar volgens mij maak je nu een list van een list. Probeer dit eens:
Python:
1
sum(spreidingslist)

Nogmaals, ik ken geen Python. :+

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Acties:
  • 0 Henk 'm!

  • MaiorDomus
  • Registratie: Maart 2003
  • Laatst online: 26-06 18:09
-NMe- schreef op woensdag 11 januari 2006 @ 21:34:
Ik ken geen Python, maar volgens mij maak je nu een list van een list. Probeer dit eens:
Python:
1
sum(spreidingslist)

Nogmaals, ik ken geen Python. :+
zelfde fout helaas..

Acties:
  • 0 Henk 'm!

Anoniem: 85525

Is spreidingslist een lijst van int's? Zo ja, dan moet -NMe-'s tip gewoon werken:

code:
1
2
3
4
>>> listone
[2,3,4]
>>> sum(listone)
9


Zo nee, welk type list is spreidingslist?

Acties:
  • 0 Henk 'm!

  • Robtimus
  • Registratie: November 2002
  • Laatst online: 26-06 20:16

Robtimus

me Robtimus no like you

-NMe- schreef op woensdag 11 januari 2006 @ 21:34:
Ik ken geen Python, maar volgens mij maak je nu een list van een list. Probeer dit eens:
Python:
1
sum(spreidingslist)

Nogmaals, ik ken geen Python. :+
Maar je hebt wel gelijk ;)

More than meets the eye
There is no I in TEAM... but there is ME
system specs


Acties:
  • 0 Henk 'm!

  • MaiorDomus
  • Registratie: Maart 2003
  • Laatst online: 26-06 18:09
volgens mij zie ik het probleem al.. even uitproberen |:(

Ja hoor :) ik had per ongeluk allemaal listjes in een list gemaakt in de plaats van het een grote list gehouden! daarom werkte het dus niet :)

hardstikke bedankt iedereen maar ik was dus gewoon een klungel :D

[ Voor 66% gewijzigd door MaiorDomus op 11-01-2006 22:02 ]


Acties:
  • 0 Henk 'm!

Anoniem: 13428

En voor de obscuriteit, of de functionele programmeerheid. (Met afkeuring van Guido):

code:
1
reduce(lambda x,y: x+y, lijst, 0);
Pagina: 1