J'ai les deux listes suivantes :
first = [1,2,3,4,5]
second = [6,7,8,9,10]
Je veux maintenant ajouter les éléments de ces deux listes dans une nouvelle liste.
La sortie devrait être
third = [7,9,11,13,15]
J'ai les deux listes suivantes :
first = [1,2,3,4,5]
second = [6,7,8,9,10]
Je veux maintenant ajouter les éléments de ces deux listes dans une nouvelle liste.
La sortie devrait être
third = [7,9,11,13,15]
Que se passe-t-il si vous avez une liste avec des longueurs différentes ? alors vous pouvez essayer quelque chose comme ceci (en utilisant zip_longest
)
from itertools import zip_longest # izip_longest for python2.x
l1 = [1, 2, 3]
l2 = [4, 5, 6, 7]
>>> list(map(sum, zip_longest(l1, l2, fillvalue=0)))
[5, 7, 9, 7]
Ma réponse est répétée avec celle de Thiru qui y a répondu en Mar 17 à 9:25.
C'était plus simple et plus rapide, voici ses solutions :
Le moyen le plus simple et le plus rapide est de le faire :
three = [sum(i) for i in zip(first,second)] # [7,9,11,13,15]
Alternativement, vous pouvez utiliser numpy sum :
from numpy import sum three = sum([first,second], axis=0) # array([7,9,11,13,15])
Vous avez besoin de numpy !
Les tableaux numpy peuvent effectuer des opérations comme les vecteurs.
import numpy as np
a = [1,2,3,4,5]
b = [6,7,8,9,10]
c = list(np.array(a) + np.array(b))
print c
# [7, 9, 11, 13, 15]
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.