Que signifie `//` en Python ? (Avec exemples)

En Python, //
est l’opérateur de division entière. Il divise deux nombres et arrondit le résultat à l’entier inférieur le plus proche.
Par exemple :
print(10 // 3) # Output: 3
print(-10 // 3) # Output: -4
Points clés
//
effectue une division entière, ce qui signifie qu’il arrondit à l’entier inférieur le résultat.- Fonctionne avec les entiers et les nombres à virgule flottante.
- Arrondit toujours vers l’infini négatif (
-∞
).
Comprendre la division entière (//
)
L’opérateur //
divise deux nombres mais au lieu de renvoyer un résultat à virgule flottante, il tronque (arrondit à l’entier inférieur) le résultat à l’entier le plus proche.
Exemple :
print(7 // 2) # Output: 3 (au lieu de 3.5)
print(-7 // 2) # Output: -4 (arrondit vers -∞)
Comment //
gère-t-il les nombres à virgule flottante ?
Même si l’un des opérandes est un float, le résultat reste arrondi à l’entier inférieur mais au format float :
print(7.0 // 2) # Output: 3.0
print(-7.5 // 2) # Output: -4.0
Différence entre /
et //
Opérateur Description Exemple /
Division normale (renvoie un float) 5 / 2 = 2.5
//
Division entière (arrondit à l’entier inférieur) 5 // 2 = 2
Quand utiliser //
?
- Lorsque vous n’avez besoin que de nombres entiers (par ex., pour compter des éléments).
- Pour éviter les erreurs de précision des floats (par ex., pour indexer des tableaux).
- Pour garantir des résultats entiers dans les boucles.
Exemple : Utilisation de //
pour la pagination :
items_per_page = 10
total_items = 95
pages = total_items // items_per_page
print(pages) # Output: 9
FAQ
Non, si l'un des opérandes est un float, le résultat est un float.
Parce que `//` arrondit vers l'infini négatif (`-∞`).
Oui, `a // b` est équivalent à `math.floor(a / b)`.
Conclusion
L’opérateur //
en Python effectue une division entière, arrondissant le résultat à l’entier inférieur le plus proche. Il est utile lorsqu’on travaille avec des calculs entiers, des boucles et de la pagination.