Additionner Deux Nombres
Apprenez à additionner deux nombres en Python avec l'opérateur +, sum() et functools.reduce(). Entiers, flottants et conversion des entrées utilisateur.
Additionner deux nombres est l'une des premières opérations arithmétiques à comprendre en Python. Python propose plusieurs approches : l'opérateur + pour les cas les plus simples, la fonction intégrée sum() lorsqu'on travaille avec une collection, et functools.reduce() pour un style de code fonctionnel. Cette page couvre les trois méthodes, ainsi que l'étape importante consistant à convertir la saisie utilisateur en type numérique avant d'effectuer l'addition.
Méthode 1 : Utiliser l'opérateur +
L'opérateur d'addition + est la façon la plus directe d'additionner deux nombres. Il fonctionne avec les entiers, les flottants et les nombres complexes.
Le même opérateur fonctionne avec les flottants sans aucune modification :
x = 3.5
y = 1.2
print(x + y) # Output: 4.7Conseil sur le nommage des variables : évitez de nommer une variable sum — cela masque la fonction intégrée sum() de Python et peut provoquer des bugs difficiles à identifier plus tard dans votre code.
Méthode 2 : Additionner des nombres depuis la saisie utilisateur
Lorsqu'un utilisateur saisit un nombre, Python le reçoit sous forme de string. Vous devez le convertir en entier avec int() ou en nombre à virgule flottante avec float() avant de pouvoir effectuer des opérations arithmétiques. Consultez Python Casting pour une explication complète de la conversion de types.
a = int(input("Enter first number: "))
b = int(input("Enter second number: "))
result = a + b
print("The sum is:", result)Si la saisie peut contenir des décimales, utilisez float() au lieu de int() :
a = float(input("Enter first number: "))
b = float(input("Enter second number: "))
print("The sum is:", a + b)Méthode 3 : Utiliser la fonction intégrée sum()
La fonction intégrée sum() de Python additionne chaque élément d'un itérable (comme une liste ou un tuple). C'est l'outil approprié lorsque vous avez plus de deux nombres à additionner.
sum() accepte également un argument optionnel start, qui est ajouté au résultat :
total = sum([1, 2, 3], 10) # 10 + 1 + 2 + 3
print(total) # Output: 16Cela est utile lorsque vous souhaitez accumuler une valeur dans un total courant.
Méthode 4 : Utiliser functools.reduce()
reduce() du module functools applique répétitivement une fonction à deux arguments sur une séquence, la réduisant à une valeur unique. Pour une simple addition, sum() est plus lisible, mais reduce() est précieux lorsque la fonction de combinaison est plus complexe que +.
Vous pouvez également passer une lambda à la place d'une fonction nommée :
from functools import reduce
total = reduce(lambda x, y: x + y, [10, 20, 30, 40, 50])
print(total) # Output: 150Choisir la bonne approche
| Situation | Approche recommandée |
|---|---|
| Additionner deux valeurs connues | opérateur + |
| Lire des nombres depuis le clavier | int() / float() puis + |
| Faire la somme d'une liste ou d'un tuple | sum() |
| Appliquer une fonction de combinaison personnalisée | functools.reduce() |
Sujets connexes
- Python Variables — comment stocker et nommer des valeurs
- Python Operators — référence complète des opérateurs arithmétiques, de comparaison et logiques
- Python Numbers — entiers, flottants et nombres complexes expliqués
- Python Casting — conversion entre types avec
int(),float()etstr() - Python User Input — lecture de valeurs depuis le clavier avec
input()