Comment la somme des colonnes d'un tableau en Python
Comment puis-je ajouter toutes les valeurs d'une colonne dans un python tableau? Idéalement, je veux le faire sans avoir à importer des bibliothèques supplémentaires.
input_val = [[1, 2, 3, 4, 5],
[1, 2, 3, 4, 5],
[1, 2, 3, 4, 5]]
output_val = [3, 6, 9, 12, 15]
Je sais que je cela peut être fait dans une étude pour la boucle, vous demandez-vous si il y a une meilleure façon (comme une compréhension de liste)?
InformationsquelleAutor Alexander | 2017-04-17
Vous devez vous connecter pour publier un commentaire.
zip
etsum
peut le faire:Code:
zip
le contenu de la liste d'entrée et la transpose de telle sorte que chaque élément de la liste est produite en même temps. Cela permet à l'sum
pour voir les premiers éléments de chaque liste contenues, alors la prochaine itération obtiendrez le deuxième élément de chaque liste, etc...Code De Test:
Résultats:
Dans le cas où vous décidez d'utiliser n'importe quelle bibliothèque, numpy facilement fait ceci:
Vous pouvez également utiliser
somme
aveczip
dans lemap
fonction:Cela devrait fonctionner:
Essayez ceci:
Je pense que c'est le plus pythonic façon de le faire
One-liner à l'aide interprétations de la liste: pour chaque colonne (la longueur d'une ligne), faites une liste de toutes les entrées de cette colonne, et la somme de cette liste.
Je suppose que vous pouvez utiliser:
Essayer ce code. Cela va faire
output_val
finir comme[3, 6, 9, 12, 15]
donné votreinput_val
:cela permettrait de rendre le code encore plus simple, je suppose que
AttributeError: 'list' object has no attribute 'sum'
Utilisation de Numpy vous pouvez facilement résoudre ce problème en une seule ligne:
1: Entrée
2: Numpy effectue les calculs pour vous
3: Ensuite, enfin, les résultats