Cet article vous apporte une introduction à l'utilisation de la méthode __call__ en python (avec des exemples). Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il vous sera utile.
Si une classe en python définit la méthode __call__, alors son instance de cette classe peut être appelée en tant que fonction, c'est-à-dire que l'opérateur () est implémenté et le protocole objet peut être appelé
Ce qui suit est un exemple simple :
class TmpTest: def __init__(self, x, y): self.x = x self.y = y def __call__(self, x, y): self.x, self.y = x, y a = TmpTest(1, 2) a(4, 5) print(a.x, a.y)
Dans cet article, nous n'aborderons pas la partie décoration. Nous utiliserons le décorateur pour expliquer l'utilisation d'une méthode __call__ Si vous avez besoin d'utiliser un. classe en tant que décorateur, vous devez implémenter la méthode __call__ pour cette classe. Un exemple d'utilisation de __call__ pour implémenter un décorateur de classe :
class TmpTest: def __init__(self, func): self.func=func def __call__(self, *args,**kwargs): result=self.func(*args,**kwargs) return result @TmpTest def add_num(x,y): return x+y print(add_num(1,0))
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!