Вебинары Разобраться в IT Реферальная программа
Программирование Аналитика Дизайн Маркетинг
ПРИХОДИТЕ УЧИТЬСЯ НОВОЙ ПРОФЕССИИ ЛЕТОМ СО СКИДКОЙ ДО 70% Забронировать скидку
07 Июл 2023
2 мин
3272

Символ «->» в определении функций Python

Часто сталкиваются с ситуацией, когда в определении функции Python встречается стрелка «->». Например: Этот синтаксис может вызвать недоумение,

Освойте Python на курсе от Skypro. Вас ждут 400 часов обучения и практики (достаточно десяти часов в неделю), подготовка проектов для портфолио, индивидуальная проверка домашних заданий и помощь опытных наставников. Получится, даже если у вас нет опыта в IT.

Часто сталкиваются с ситуацией, когда в определении функции Python встречается стрелка «->». Например:

def f(x) -> 123:
    return x

Этот синтаксис может вызвать недоумение, так как в Python 2 он отсутствовал. Вероятно, было бы логично предположить, что это предусловие, но при попытке протестировать это обнаруживается, что независимо от того, что расположено после стрелки, это никак не влияет на поведение функции.

Символ «->» в определении функций Python используется для указания ожидаемого типа возвращаемого значения. Это называется «аннотацией типов». Это не влияет на выполнение функции, но может быть полезно для разработчиков для понимания, какой тип данных ожидается в качестве возвращаемого значения функции.

Стоит отметить, что Python является языком с динамической типизацией, поэтому аннотации типов являются лишь рекомендацией, а не строгим правилом. То есть, функция может вернуть значение любого типа, независимо от аннотации.

Например, в данном случае:

def f(x) -> str:
    return x

Функция f(x) ожидается, что вернет строку str. Но даже если функция вернет число или любой другой тип данных, интерпретатор Python не выдаст ошибку.

Таким образом, «->» в определении функций Python — это способ указать ожидаемый тип возвращаемого значения, что может помочь в понимании кода и его дальнейшем использовании.

Изучайте Python на онлайн-курсе от Skypro «Python-разработчик». Программа рассчитана на новичков без опыта программирования и технического образования. Курс проходит в формате записанных коротких видеолекций. Будет много проверочных заданий и мастер-классов. В конце каждой недели — живая встреча с экспертами в разработке для ответов на вопросы и разбора домашек.

Добавить комментарий

Подарок
Забрать подарок