Exemples de comment additionner tous les éléments d'une liste sous python:
Additionner tous les éléments d'une liste avec la fonction sum()
Pour sommer tous les éléments d'une liste sous python il existe la fonction "Built-in" sum(), illustration:
>>> list = [1,2,3,4]
>>> sum(list)
10
avec des nombres décimaux:
>>> l = [3.1,2.5,6.8]
>>> sum(l)
12.399999999999999
on peut aussi arrondir le résultat comme ceci (voir Floating Point Arithmetic: Issues and Limitations):
>>> round(sum(l),1)
12.4
Additionner tous les éléments d'une liste avec une boucle for
Exemple de comment additionner tous les éléments d'une liste avec une boucle
>>> list = [1,2,3,4]
>>> tot = 0
>>> for i in list:
... tot = tot + i
...
>>> tot
10
Additionner tous les nombres d'une liste quelconque
Un autre exemple avec une liste comprenant des entiers, des nombres décimaux et des lettres:
>>> l = ['a',1,'f',3.2,4]
>>> sum([i for i in l if isinstance(i, int) or isinstance(i, float)])
8.2
Fusionner tous les éléments d'une liste de "string":
Pour une liste composée de "string" la fonction sum() ne marche pas:
>>> list = ['a','b','c','d']
>>> sum(list)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: unsupported operand type(s) for +: 'int' and 'str'
Pour concaténer une liste de "string" il faut utiliser join():
>>> ','.join(list)
'a,b,c,d'
>>> ' '.join(list)
'a b c d'
Références
Liens | Site |
---|---|
Built-in Functions | |
Summing elements in a list | stackoverflow |
string — Common string operations | python doc |
Joining elements of a list - Python | stackoverflow |