Аннотация типов — это функция Python, позволяющая указывать ожидаемые типы ваших переменных, функций, методов и классов.
Это дополнительная функция, которую Python предоставляет для улучшения читаемости и безопасности типов в вашем коде.
Вы можете аннотировать типы переменных, используя двоеточие : после имени переменной, за которым следует ожидаемый тип.
age: int = 20
name: str = "Alice"
В этом примере мы указываем, что переменная age
должна быть типа int
, а переменная name
— типа str
.
Аннотацию типов можно использовать в функциях для указания ожидаемых типов аргументов и возвращаемых значений.
def greet(name: str) -> str:
return f"Hello, {name}!"
В этом примере аннотация типа str
для аргумента name
указывает, что функция greet()
ожидает строку в качестве входного значения. -> str
после объявления аргументов функции указывает на то, что функция должна возвращать строку.
Аннотации типов также могут использоваться в классах для указания ожидаемых типов атрибутов класса.
class Person:
name: str
age: int
def __init__(self, name: str, age: int) -> None:
self.name = name
self.age = age
Здесь мы указываем, что атрибуты name
и age
класса Person
должны быть строкой и целым числом соответственно.
Python позволяет аннотировать более сложные типы, такие как списки, словари, кортежи и другие.
from typing import List, Dict, Tuple
names: List[str] = ["Alice", "Bob", "Charlie"]
age_map: Dict[str, int] = {"Alice": 20, "Bob": 25, "Charlie": 30}
person: Tuple[str, int] = ("Alice", 20)
В этом примере мы используем модуль typing
, который включает в себя множество дополнительных инструментов для аннотации сложных типов.
С помощью модуля typing
вы также можете аннотировать необязательные типы, используя Optional
.
from typing import Optional
def greet(name: Optional[str] = None) -> str:
if name is None:
return "Hello, world!"
else:
return f"Hello, {name}!"
В этом примере Optional[str]
указывает, что аргумент name
может быть либо строкой, либо None
.
Кроме того, они могут улучшить автодополнение и другие функции сред разработки, обеспечивая более точную информацию о типах в вашем коде.
Аннотация типов — это мощный инструмент в Python, который может улучшить читаемость вашего кода и уменьшить вероятность ошибок типов. Она позволяет явно указывать ожидаемые типы ваших переменных, функций, классов и модулей.
Содержание: