Pythonissa on joukko sisäänrakennettuja menetelmiä ja__call__>on yksi niistä. The__call__>-menetelmän avulla Python-ohjelmoijat voivat kirjoittaa luokkia, joissa esiintymät käyttäytyvät funktioiden tavoin ja joita voidaan kutsua funktioiksi. Kun ilmentymää kutsutaan funktiona; jos tämä menetelmä on määritelty,x(arg1, arg2, ...)>on lyhenne sanallex.__call__(arg1, arg2, ...)>.
object() is shorthand for object.__call__()>
Esimerkki 1:
lataa youtube-videoita vlc:llä
class> Example:> >def> __init__(>self>):> >print>(>'Instance Created'>)> > ># Defining __call__ method> >def> __call__(>self>):> >print>(>'Instance is called via special method'>)> > # Instance created> e>=> Example()> > # __call__ method will be called> e()> |
>
>
Lähtö:
Instance Created Instance is called via special method>
Esimerkki 2:
tiedosto avataan javassa
mia khalifa ikä
class> Product:> >def> __init__(>self>):> >print>(>'Instance Created'>)> > ># Defining __call__ method> >def> __call__(>self>, a, b):> >print>(a>*> b)> > # Instance created> ans>=> Product()> > # __call__ method will be called> ans(>10>,>20>)> |
>
>
Lähtö:
Instance Created 200>