168 votes

Ajouter la SOMME des valeurs de deux LISTE dans une nouvelle LISTE

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]

2voto

mohammed wazeem Points 1085

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]

2voto

Piece Points 21

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]

1voto

Sidharth yadav Points 21

Voici une autre façon de procéder, qui fonctionne bien pour moi.

N=int(input())
num1 = list(map(int, input().split()))
num2 = list(map(int, input().split()))
sum=[]

for i in range(0,N):
  sum.append(num1[i]+num2[i])

for element in sum:
  print(element, end=" ")

print("")

1voto

Vijay Kumar Points 11
j = min(len(l1), len(l2))
l3 = [l1[i]+l2[i] for i in range(j)]

1voto

Radvin Points 101

Si vous considérez vos listes comme des tableaux numpy, alors vous devez les additionner facilement :

import numpy as np

third = np.array(first) + np.array(second)

print third

[7, 9, 11, 13, 15]

Prograide.com

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.

Powered by:

X