__call__


__call__() usuli

__call__() usuli obyektni object() sintaksisi yordamida funksiya sifatida chaqirishga imkon beradi.

Misol

Tugmani bosishni hisoblash uchun funksiya sifatida chaqirilishi mumkin bo‘lgan ClickCounter obyektini yarating:

class ClickCounter:   def __init__(self):     self.clicks = 0   def __call__(self):     self.clicks += 1     return self.clicks button_clicks = ClickCounter() print(button_clicks()) print(button_clicks()) print(button_clicks())
O‘zingiz sinab ko‘ring »

Eslatma:button_clicks funksiya emas, balki obyektdir - lekin __call__() uni funksiya sifatida bir xil () sintaksisi bilan ishlatish imkonini beradi.

Oddiy funksiyadan farqli o‘laroq, u chaqiruvlar orasida o‘z holatini eslab qoladi, shuning uchun har safar chaqirilganda hisob ko‘payadi.



W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!