Énigme de la division : les nombres entiers se divisent en décimales dans Python 3
Dans Python 3, effectuer une division entière (par exemple, 2/2) donne des résultats inattendus un flottant (1.0) au lieu d'un entier. Ce comportement diffère des versions précédentes de Python où la division entière aboutissait à un résultat entier.
Origine du changement
Ce changement a été introduit dans Python 3 pour résoudre les ambiguïtés et améliorer cohérence mathématique. Avant Python 3, la division entière dans Python 2 se comportait différemment, arrondissant à l'entier inférieur le plus proche (par exemple, 2/2 donnait 0).
Résoudre le dilemme
Pour résoudre ce problème, Python 3 a introduit l'opérateur // pour la division au sol, qui garantit une division entière et renvoie le résultat arrondi (par exemple, 2//2 donne 1).
Recommandation
Comme bonne pratique, utilisez toujours l'opérateur // pour la division d'étage dans Python 3. Cela garantit que vous obtenez le résultat entier attendu. Le casting n'est pas nécessaire car l'opérateur // effectue explicitement la division d'étage.
Exploration plus approfondie
Pour plus d'informations, consultez PEP-238 : Changer l'opérateur de division. Ce document détaille la justification du changement et fournit des informations supplémentaires.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!