Python Callable Object

Da Andreabont's Wiki.

In Python è possibile rendere un oggetto chiamabile implementando il metodo magico __call__.

class Foo:
   def __call__(self):
      print("Chiamato!")

Che può essere chiamato nel seguente modo:

>>> miooggetto = Foo()
>>> miooggetto()
Chiamato!

E' possibile verificare che un oggetto è chiamabile tramite:

>>> callable(miooggetto)
True