Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗pyOpAnUn 65 of 174 menu
◀ ▶

Несколько типов в аннотации в ООП в Python

Иногда один параметр может принимать значения разных типов. Например, метод может выводить и число, и строку - в зависимости от того, что передали.

Допустимые типы перечисляют через вертикальную черту. Запись int | str означает: подойдет целое число или строка.

Давайте сделаем метод show, который работает с таким параметром:

class User: def show(self, data: int | str) -> str: return str(data)

Создадим объект и вызовем метод с разными аргументами:

user = User() print(user.show(123)) # выведет '123' print(user.show('john')) # выведет 'john'

Аннотация int | str описывает оба варианта для читателя кода. Интерпретатор при вызове ее не проверяет.

Сделайте класс Employee с методом format_id. Пусть метод параметром принимает число или строку и возвращает строку. Укажите тип параметра как int | str.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить