Manipulation et calculs avec les types numériques en Python

Les opérateurs numériques en Python

En Python, les opérateurs numériques sont des symboles permettant d'effectuer des calculs mathématiques et de gérer l'affectation des valeurs. On les classe généralement en deux catégories : les opérateurs arithmétiques et les opérateurs d'affectation.

Opérateurs arithmétiques

Ces opérateurs permettent d'effectuer les opérations mathématiques de base. Prenons l'exemple de deux variables x = 10 et y = 3 pour illustrer leurs comportements :

Opérateur Description Exemple (x=10, y=3) Résultat
+ Addition x + y 13
- Soustraction x - y 7
* Multiplication x * y 30
/ Division (flottante) x / y 3.333...
% Modulo (reste de la division) x % y 1
** Puissance (exponentiation) x ** y 1000
// Division entière (quotient) x // y 3

Voici un exemple pratique pour calculer le montant total d'une facture incluant une taxe :

# Calcul du prix TTC
prix_ht = float(input("Entrez le prix hors taxes : "))
taux_taxe = float(input("Entrez le taux de taxe (ex: 0.20 pour 20%) : "))

# Utilisation de l'opérateur de multiplication
montant_ttc = prix_ht * (1 + taux_taxe)
print("Le prix total après taxes est de :", montant_ttc)

Opérateurs d'affectation combinés

Outre l'affectation simple avec le signe =, Python permet d'effectuer une opération et une affectation en une seule étape. On parle d'opérateurs d'affectation augmentée.

# Affectation multiple
score_a = score_b = 100

# Affectations multiples de valeurs distinctes
nom, age, est_actif = "Alice", 25, True

Le tableau suivant récapitule les opérateurs combinés avec a = 10 et b = 2 :

Opérateur Équivalence Résultat (a)
+= a = a + b 12
-= a = a - b 8
*= a = a * b 20
/= a = a / b 5.0
//= a = a // b 5
**= a = a ** b 100

Converison de types numériques

Il est souvent nécessaire de transformer une donnée d'un type à un autre, notamment lors de la récupération de saisies utilisateur qui sont initialement des chaînes de caractères (strings).

Fonction Utilité
int(x) Convertit x en entier (supprime la partie décimale).
float(x) Convertit x en nombre à virgule flottante.
complex(re, im) Crée un nombre complexe à partir d'une partie réelle et imaginaire.
bool(x) Convertit x en valeur booléenne (True ou False).

Exemple de sommation avec conversion de types :

# Les entrées sont lues comme des chaînes de caractères
entree1 = input("Saisissez un premier nombre : ")
entree2 = input("Saisissez un second nombre : ")

# Conversion explicite pour permettre l'addition mathématique
total = float(entree1) + float(entree2)
print("La somme est :", total)

Fonctions numériques intégrées

Python propose nativement des foncsions pour effectuer des opérations mathématiques courantes sans importer de modules externes.

Fonction Description
abs(x) Retourne la valeur absolue de x.
divmod(x, y) Retourne un tuple contenant le quotient et le reste (x//y, x%y).
pow(x, y) Calcule x à la puissance y.
round(x, n) Arrondit x à n décimales de précision.
max(a, b, ...) Retourne la valeur la plus élevée parmi les arguments.
min(a, b, ...) Retourne la valeur la plus basse.

Application concrète : simulation de croissance composée sur une année.

import math

# Comparaison entre une progression constante de 1% et une régression de 1%
croissance = math.pow((1 + 0.01), 365)
declin = math.pow((1 - 0.01), 365)

print(f"Impact d'une amélioration quotidienne : {croissance:.4f}")
print(f"Impact d'une négligence quotidienne : {declin:.4f}")

Étiquettes: Python Math operators type-conversion Data-Types

Publié le 19 octobre à 18h49