Автор оригинала: Pankaj Kumar.
Вступление
В этом руководстве мы собираемся обсудить Python Callable () Метод наряду с его использованием и работающим.
В основном, объект или экземпляр называется Callable Когда он имеет определенный __call __ ()
функция. В этом случае мы можем ссылаться на .__ Call __ (ARG1, ARG2, …) в проще, A (ARG1, ARG2, …). Следовательно, это становится Callable.
Метод Python Callable ()
Далее Callable ()
Метод в Python облегчает для пользователей выявлять Callable, а также не вызываемые объекты и функции. Это единственная функция аргумента, которая возвращает правда Если пропущенный объект Callable и ложь Если это не так.
синтаксис Для метода приведен ниже,
callable(obj)
Здесь obj
является ли экземпляром или объектом, который пользователь хочет проверить, вызывается или нет.
Работа метода Python Callable ()
Давайте посмотрим на некоторые примеры, чтобы иметь четкое понимание Callable ()
Метод в Python.
Когда Python Callable () возвращает true
Как заявлено ранее, метод возвращает правда Когда прошедший объект Callable. Давайте посмотрим на какие условия это так.
#true def demo(): print("demo() called!") #object created demo_obj = demo class demo_class: def __call__(self, *args, **kwargs): #__call__() is defined here print("__call__() defined!") demo_class_obj = demo_class() print("demo_obj is callable? ",callable(demo_obj)) print("demo_class is callable? ",callable(demo_class)) #classes are always callable print("demo_class_obj is callable? ",callable(demo_class_obj)) demo_obj() #calling demo()'s object demo_class_obj() #calling the demo_class object
Выход :
demo_obj is callable? True demo_class is callable? True demo_class_obj is callable? True demo() called! __call__() defined!
Здесь,
- Мы определяем
Демо ()
Функция, создать свой новый экземпляр Demo_obj , - Затем определите новый класс Demo_Class с
__call __ ()
функция, - И создать объект класса Demo_Class по имени demo_class_obj ,
- Наконец, проверьте, являются ли созданные объекты и класс Callable или нет. Что мы можем видеть с вывода, Callable.
- И наконец, мы называем как функцию
Демо ()
иdemo_class_obj ()
Отказ В случае объекта Demo Class Call, __call __ () Способ выполнен, как мы можем видеть с вывода.
Примечание: Все классы Callable, поэтому для любого класса Callable () метод возвращает true. Это очевидно из приведенного выше примера, где мы пытаемся проверить Callable ()
Выход для DEMO_CLASS.
Когда Python Callable () возвращает false
Опять же, Callable ()
Возвращает ложь Когда проходящий объект не вызывается. Давайте посмотрим на то, что это делает это.
n = 10 class demo_class: def print_demo(self): print("demo") demo_class_obj = demo_class() print("n is callable? ",callable(n)) print("demo_class_obj is callable? ",callable(demo_class_obj))
Выход :
n is callable? False demo_class_obj is callable? False
В коде выше,
- Мы инициализируем целое число n как N ,
- А затем определить класс Demo_Class с функцией участника
print_demo ()
, - После этого мы создаем объект demo_class по имени demo_class_obj ,
- И, наконец, проверьте ли N и demo_class_obj Callable или нет, что из выхода выше, мы видим, что не вызываются.
N это целое число и явно не может быть вызвано. Принимая во внимание, что в случае demo_class_obj класс (demo_class) не имеет четко определенного __call __ ()
метод. Следовательно, не вызывается.
Заключение
Итак, в этом руководстве мы узнали о Python Callable () Метод и его работа. Метод широко используется для ошибок проверки программы.
Проверка, если объект или функция вызывается или не до того, как на самом деле вызывает, это помогает избежать Типеррор Отказ
Я надеюсь, что у вас есть четкое понимание темы. Для любых вопросов не стесняйтесь комментировать ниже.
Рекомендации
- Python Callable () и __call __ () – журнал Dev Post,
- Что такое “Callable”? – Вопрос Stackoverflow,
- Документация Python на Callable ().