Извикваем от Python ()

Методът callable () връща True, ако подаденият обект изглежда извикваем. В противен случай връща False.

Синтаксисът на callable()е:

 извикваем (обект)

callable () Параметри

callable() метод приема един аргумент object.

Върната стойност от callable ()

callable() методът връща:

  • True - ако обектът изглежда извикваем
  • False - ако обектът не се извиква.

Важно е да запомните, че дори и да callable()е True, извикването на обекта все пак може да се провали.

Ако обаче се callable()върне False, извикването на обекта със сигурност ще се провали.

Пример 1: Как работи callable ()?

 x = 5 print(callable(x)) def testFunction(): print("Test") y = testFunction print(callable(y))

Изход

 False True

Тук обектът x не се извиква. И обектът y изглежда извикваем (но може и да не се извиква).

Пример 2: Извикващ се обект

 class Foo: def __call__(self): print('Print Something') print(callable(Foo))

Изход

 Вярно

Екземплярът на Fooкласа изглежда извикваем (и в този случай е извикваем).

 class Foo: def __call__(self): print('Print Something') InstanceOfFoo = Foo() # Prints 'Print Something' InstanceOfFoo()

Пример 3: Обектът изглежда Извикваем, но не се извиква.

 class Foo: def printLine(self): print('Print Something') print(callable(Foo))

Изход

 Вярно

Екземплярът на Fooкласа изглежда извикваем, но не е извикваем. Следният код ще доведе до грешка.

 class Foo: def printLine(self): print('Print Something') print(callable(Foo)) InstanceOfFoo = Foo() # Raises an Error # 'Foo' object is not callable InstanceOfFoo()

Изход

 True Traceback (последно последно обаждане): Файл „“, ред 10, в TypeError: „Foo“ обектът не може да се извика 

Интересни статии...