Функция Аннотации: PEP-3107
Я просмотрел фрагмент кода, демонстрирующий аннотации функций Python3. Концепция проста, но я не могу придумать, почему они были реализованы в Python3 или для каких-либо хороших применений для них. Возможно, SO может просветить меня?
Как это работает:
def foo(a: 'x', b: 5 + 6, c: list) -> max(2, 9):
... function body ...
Все после двоеточия после аргумента является "аннотацией", а информация, следующая за ->
, представляет собой аннотацию для возвращаемого значения функции.
foo.func_annotations вернет словарь:
{'a': 'x',
'b': 11,
'c': list,
'return': 9}
Какое значение имеет доступность?