Что означает -> в определениях функций Python?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Что означает -> в определениях функций Python?

Сообщение Anonymous »

Недавно я заметил кое-что интересное, просматривая спецификацию грамматики Python 3.3:

Код: Выделить всё

funcdef: 'def' NAME parameters ['->' test] ':' suite
Необязательный блок «стрелка» отсутствовал в Python 2, и я не смог найти никакой информации о его значении в Python 3. Оказывается, это правильный Python, и он принимается интерпретатором. :

Код: Выделить всё

def f(x) -> 123:
return x
Я думал, что это может быть своего рода синтаксис предусловий, но:
  • Я не могу проверить x здесь, поскольку он все еще не определен,
    Независимо от того, что я ставлю после стрелки (например, 2 < 1), это не влияет на поведение функции.< /li>
Может ли кто-нибудь, знакомый с этим стилем синтаксиса, объяснить это?

Подробнее здесь: https://stackoverflow.com/questions/143 ... efinitions
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»