Appel de fonctions au sein d'une classe
Lorsque vous travaillez avec une programmation orientée objet, vous devrez peut-être appeler des fonctions au sein d'une classe. Un scénario courant consiste à définir deux fonctions au sein de la même classe et à appeler une fonction depuis une autre. Cet article vous guidera à travers le processus d'appel d'une fonction au sein d'une classe.
Dans cet exemple, nous avons une classe nommée Coordonnées avec deux fonctions : distToPoint et isNear. La fonction distToPoint calcule la distance entre deux coordonnées, tandis que la fonction isNear vérifie si un point est proche d'un autre point en fonction de la distance calculée.
Le code d'origine fourni :
class Coordinates: def distToPoint(self, p): """ Use pythagoras to find distance (a^2 = b^2 + c^2) """ ... def isNear(self, p): distToPoint(self, p) ...
Dans ce code, une erreur se produit lors de la tentative d’appel de la fonction distToPoint dans la fonction isNear. Pour appeler correctement une fonction au sein d'une classe, elle doit être appelée en tant que fonction membre sur l'instance (self). Le code suivant montre la version corrigée :
class Coordinates: def distToPoint(self, p): """ Use pythagoras to find distance (a^2 = b^2 + c^2) """ ... def isNear(self, p): self.distToPoint(p) ...
En utilisant self.distToPoint(p) dans la fonction isNear, la fonction distToPoint est correctement appelée en tant que fonction membre sur l'instance actuelle de la classe Coordonnées.
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!