Функциональные аннотации – это не что иное, как способ связать произвольные выражения Python различными частями функции при компиляции времени.
https://stackoverflow.com/a/43977962/953553
- Определение класса с напечатанными полями
- Укажите типы args Функции получают
- E.g Хорошая идея, как пичарм, сделает это
- Установить
Pep8.
иmypy-lang
быть предупрежденным
Основные типы
(Беги с Pep8
и mypy-lang
установлены):
def greeting(name: str) -> str: return 'Hello ' + name
Тогда звонит:
greeting(2)
Traceback (most recent call last): File "", line 1, in File " ", line 2, in greeting TypeError: Can't convert 'int' object to str implicitly
greeting('3') #'Hello 3'
Поддержка классов и наследства
Более сложные типы:
Список
from typing import List
Корпус
from typing import Tuple
NamedTuple.
from typing import NamedTuple
Обдумывать
from typing import Dict
Союз
это способ разрешить более одного типа для переменной.
По желанию
Больше хороших примеров печатных материалов здесь:
https://blog.daftcode.pl/first-steps-with-python-type-system-30e4296722af
from typing import NamedTuple class Employee(NamedTuple): name: str id: int = 3 employee = Employee('Guido') assert employee.id == 3
Оригинал: “https://dev.to/andi/typed-python-typed-namedtuple-3-o5b”