PYTHON СИГНАТУРА ФУНКЦИИ

Сигнатура функции в Python представляет собой список параметров функции, которые определяют ее входы и выходы. В Python для определения сигнатуры функции используется библиотека inspect.

К примеру, функция sum_numbers(x, y) имеет следующую сигнатуру:

import inspect
def sum_numbers(x: int, y: int) -> int:
    return x + y
print(inspect.signature(sum_numbers)) # (x:int, y:int) -> int

Здесь мы использовали модуль inspect для получения сигнатуры функции sum_numbers. Результат вывода показывает параметры функции и их типы, а также тип возвращаемого значения.

С помощью сигнатуры функции можно проверять соответствие переданных аргументов ее параметрам:

def sum_numbers(x: int, y: int) -> int:
    return x + y
def call_sum_numbers(args):
    try:
        inspect.signature(sum_numbers).bind(*args)
    except TypeError:
        return False
    else:
        return True
print(call_sum_numbers([1, 2])) # True
print(call_sum_numbers(['1', '2'])) # False

Здесь мы создали функцию call_sum_numbers, которая принимает аргументы любого типа и проверяет их соответствие параметрам функции sum_numbers с помощью сигнатуры.

Python с нуля. Урок 14 - Lambda-функции

50 Функция map Python. Что делает функция map в Python

Python: сигнатура функции hex() - решение

#62. Функции all и any. Примеры их использования - Python для начинающих

Python с нуля. Урок 3 - Функции

Python developer собеседование с задачей уровня хард из Яндекса . Ян Желанов

40 *args и **kwargs Python. Передача аргументов в функцию

35 Функции (def) в Python. Определение и вызов функции

BLGPG-8E0DE3379D2A-24-11-23-20

Новые материалы: