Python Callables Основы и секреты
Основы и секреты Python Callables
ПРОГРАММИРОВАНИЕ НА PYTHON
Узнайте, насколько мощными могут быть вызываемые объекты Python.
В языках программирования вызываемые объекты обычно ассоциируются с функциями, и это неспроста. Функции, пожалуй, являются лучшим примером вызываемых объектов, но не единственным. В Python есть много других типов вызываемых объектов, которые могут быть невероятно полезными и мощными. Вы также можете создавать свои собственные вызываемые объекты. В этой статье речь пойдет обо всем этом.
Вызываемый объект – это объект, который можно вызывать с помощью пары круглых скобок, как, например, ниже, где мы используем встроенную функцию sum()
:
>>> sum([1, 1, 1])3
Вызов вызываемого объекта, в зависимости от его определения, может быть:
- без аргументов, как, например,
no_args_callable()
- или серией позиционных и/или именованных аргументов, как, например,
args_callable(arg1, arg2)
,args_callable(arg1, arg2=value2)
илиargs_callable(arg1=value1, arg2=value2)
Выше я описал вызываемый объект как существительное. Однако, слово “вызываемый” также используется как прилагательное, означающее “быть вызываемым”. Таким образом, вызываемый объект – это то же самое, что и вызываемый объект.
- VoAGI News, 27 октября 5 бесплатных книг, чтобы овладеть наукой о данных • 7 шагов к овладению LLM
- Преобразование складских операций использование силы искусственного интеллекта и автоматизации
- Квантование и др. Сокращение времени вывода на LLM на 80%
Python имеет встроенную функцию callable()
, которая проверяет, является ли объект вызываемым, или, другими словами, является ли он вызываемым. Рассмотрим следующие примеры реальных вызываемых объектов:
>>> callable(lambda x: x + 1)True>>> callable(print)True>>> def foo(): ...>>> callable(foo)True
Следующие объекты не являются вызываемыми:
>>> callable(None)False>>> callable(10)False>>> callable("hello")False
Положительные примеры выше были о функциях, с которыми большинство людей ассоциирует вызываемые объекты. Однако на самом деле каждый класс Python является вызываемым. Если вы знакомы с основами ООП в Python, вы знаете, что для создания экземпляра класса необходимо сделать следующее:¹
>>> class Empty: ...
Это выглядит именно как вызов, и он им является – вот почему классы Python являются вызываемыми объектами.
Этот код показывает, что класс Empty
является вызываемым, но правда в том, что каждый отдельный класс Python является вызываемым. Однако, в Python…