“Ввод параметров в Python”
Типирование параметров в Python — это практика добавления аннотаций типов к параметрам функции. Это помогает улучшить читаемость кода, улучшить удобство сопровождения и выявить потенциальные ошибки, связанные с типами, на ранних этапах процесса разработки. В этом ответе я расскажу вам о нескольких методах ввода параметров в Python, а также о примерах кода.
-
Основной ввод параметров:
Вы можете указать тип параметра непосредственно в сигнатуре функции, используя двоеточие (:).def greet(name: str) -> str: return f"Hello, {name}!" print(greet("Alice")) # Output: Hello, Alice! print(greet(123)) # Output: TypeError: greet() argument must be str, not int -
Необязательные параметры.
Вы можете указать, что параметр является необязательным, используя подсказку типаtyping.Optional. Это позволяет параметру принимать либо указанный тип, либоNone.from typing import Optional def greet(name: Optional[str]) -> str: if name: return f"Hello, {name}!" else: return "Hello, stranger!" print(greet("Alice")) # Output: Hello, Alice! print(greet(None)) # Output: Hello, stranger! -
Значения параметров по умолчанию.
Вы можете присвоить параметру значение по умолчанию, используя обозначение знака равенства (=). Тип значения по умолчанию используется в качестве подсказки типа для параметра.def greet(name: str = "stranger") -> str: return f"Hello, {name}!" print(greet()) # Output: Hello, stranger! print(greet("Alice")) # Output: Hello, Alice! -
Типы объединения.
Вы можете указать несколько типов для параметра, используя подсказку типаtyping.Union.from typing import Union def square(number: Union[int, float]) -> Union[int, float]: return number * number print(square(5)) # Output: 25 print(square(2.5)) # Output: 6.25 print(square("hello")) # Output: TypeError: unsupported operand type(s) for *: 'str' and 'str'