COERCE |
Coercition |
---|---|
Python Version 1 à 2.7 |
Syntaxe
coerce(x, y) |
Paramètres
Nom | Description |
---|---|
x | Ce paramètre permet d'indiquer la coordonnée horizontale. |
y | Ce paramètre permet d'indiquer la coordonnée verticale. |
Description
Cette fonction permet de demander un tuple constitué des deux paramètres numériques convertis en un type commun, en utilisant les mêmes règles que celles utilisées par les opérations arithmétiques. Si la coercition n'est pas possible, il déclenche un exception TypeError.
Algorithme
MODULE COERCE(x, y) SI x et y sont du même type ALORS RETOURNE (x, y) sans changement SINON * Tenter de convertir x et y en un type commun SI x et y peuvent être convertis en un type commun ALORS RETOURNE les versions converties de (x, y) SINON Lever une exception de TypeError FIN SI FIN SI |
Remarques
- ATTENTION ! Cette fonction a été retiré du langage de programmation Python à partir de la version 3.0 de Python.
- La contrainte est la conversion implicite d'une instance d'un type à un autre au cours d'une opération impliquant deux paramètres du même type. Par exemple, en 3 + 4.5, chaque paramètre est d'un type différent (un entier, un nombre à virgule flottante), et les deux doivent être convertis dans le même type avant de pouvoir être ajoutés sinon il déclenche une exception TypeError. La coercition entre deux opérandes peut être effectuée avec la fonction intégrée coercition; ainsi, 3 + 4,5 équivaut à appeler operator.add (* coerce (3, 4.5)) et entraîne operator.add (3.0, 4.5). Sans coercition, tous les paramètres de types même compatibles devraient être normalisés à la même valeur par le programmeur, par exemple, float(3)+4.5 plutôt que seulement 3 + 4.5. Si la contrainte n'est pas possible, la contrainte déclenche une exception TypeError. L'utilisation de la fonction de coercition n'est pas vraiment nécessaire car l'interprète de Python normalise automatiquement les valeurs dans les expressions arithmétiques.
Dernière mise à jour : Mercredi, le 14 septembre 2016