user
Comment additionner deux vecteurs en Python ?
alphonsio

Le moyen le plus simple d'additionner deux vecteurs (np.array) en Python est d'utiliser l'opérateur +. Voici un exemple :

import numpy as np

# Définition des vecteurs
v1 = np.array([1, 2, 3])
v2 = np.array([4, 5, 6])

# Addition des vecteurs
v_sum = v1 + v2
print(v_sum)  # Résultat : [5 7 9]

Pour additionner deux vecteurs en Python, plusieurs approches sont possibles en fonction de vos préférences et des bibliothèques que vous utilisez. Voici les principales options :

1. Avec des listes Python simples :

Les vecteurs peuvent être représentés par des listes. Vous additionnez leurs composantes avec une compréhension de liste :

# Exemple avec deux vecteurs
v1 = [1, 2, 3]
v2 = [4, 5, 6]

# Addition des deux vecteurs
v_sum = [a + b for a, b in zip(v1, v2)]
print(v_sum)  # Résultat : [5, 7, 9]

2. Avec la bibliothèque NumPy :

NumPy est une bibliothèque puissante pour le calcul numérique et rend l'addition de vecteurs très simple avec la fonction np.add() :

import numpy as np

# Définition des vecteurs
v1 = np.array([1, 2, 3])
v2 = np.array([4, 5, 6])

# Addition des vecteurs
v_sum = np.add(v1, v2)
print(v_sum)  # Résultat : [5 7 9]

3. Avec des tuples :

Si vos vecteurs sont représentés sous forme de tuples, vous pouvez utiliser une approche similaire à celle des listes.

# Exemple avec des tuples
v1 = (1, 2, 3)
v2 = (4, 5, 6)

# Addition des deux vecteurs
v_sum = tuple(a + b for a, b in zip(v1, v2))
print(v_sum)  # Résultat : (5, 7, 9)

4. Avec une classe personnalisée (pour plus de contrôle) :

Vous pouvez également définir votre propre classe pour représenter les vecteurs.

class Vector:
    def __init__(self, components):
        self.components = components

    def __add__(self, other):
        return Vector([a + b for a, b in zip(self.components, other.components)])

    def __repr__(self):
        return f"Vector({self.components})"

# Exemple d'utilisation
v1 = Vector([1, 2, 3])
v2 = Vector([4, 5, 6])
v_sum = v1 + v2
print(v_sum)  # Résultat : Vector([5, 7, 9])

Résumé :

  • Utilisez les listes pour une approche simple.
  • Utilisez NumPy pour des calculs optimisés et plus complexes.
  • Créez une classe si vous voulez manipuler des vecteurs de manière plus sophistiquée.