Sobes.tech
Junior

Python'da chaqiriladigan ob'ekt nima?

sobes.tech AI

AIdan javob

Python'da chaqiriladigan (callable) ob'ekt - bu funksiyaga o'xshab chaqirilishi mumkin bo'lgan har qanday ob'ekt. Bu shuni anglatadiki, unga chaqirish operatori () ni qo'llash mumkin.

Chaqiriladigan ob'ektlar quyidagilarni o'z ichiga oladi:

  • Funksiyalar: def kalit so'zi yordamida aniqlangan.
  • Metodlar: Ob'ektga (sinfning nusxasiga) bog'langan funksiyalar.
  • Sinflar: Sinfni chaqirish yangi nusxani yaratadi.
  • __call__ metodiga ega ob'ektlar: Agar sinf __call__ metodini aniqlasa, uning nusxalari chaqiriladigan bo'ladi.
# Funksiya
def my_function():
    pass

# Metod
class MyClass:
    def my_method(self):
        pass

# Sinf
class AnotherClass:
    pass

# `__call__` bilan ob'ekt
class CallableObject:
    def __call__(self, *args, **kwargs):
        pass

# Chaqiriladiganligini tekshirish
import collections.abc

print(isinstance(my_function, collections.abc.Callable))
print(isinstance(MyClass().my_method, collections.abc.Callable))
print(isinstance(AnotherClass, collections.abc.Callable))
print(isinstance(CallableObject(), collections.abc.Callable))

callable() ichki funksiyasidan foydalanib, ob'ekt chaqiriladigan yoki chaqirilmaydiganligini tekshirish mumkin.

# callable() yordamida tekshirish
print(callable(my_function))
print(callable(MyClass().my_method))
print(callable(AnotherClass))
print(callable(CallableObject()))
print(callable(123)) # Chaqirilmaydigan ob'ekt

Chaqiriladigan ob'ektlar Python'da keng qo'llaniladi, ular dekoratorlar, callbacklar va funksional dasturlash kabi turli xil dizaynlarni amalga oshirish uchun ishlatiladi.