Sobes.tech
Junior — Middle
65

Использовал ли ты собственные обобщенные типы (Generics) в своих проектах?

Answer from AI

sobes.tech AI

В Python собственные обобщённые типы (Generics) можно создавать с помощью модуля typing. Например, можно определить обобщённый класс или функцию, которая работает с разными типами данных, сохраняя при этом типовую безопасность.

Пример создания собственного обобщённого класса:

from typing import TypeVar, Generic, List

T = TypeVar('T')

class Stack(Generic[T]):
    def __init__(self):
        self.items: List[T] = []

    def push(self, item: T) -> None:
        self.items.append(item)

    def pop(self) -> T:
        return self.items.pop()

Такой класс Stack может использоваться с любым типом, например, Stack[int] или Stack[str]. Это помогает писать более универсальный и типобезопасный код.

Если в проектах использовались подобные конструкции, это позволяет лучше документировать код и облегчает работу с типами при помощи статических анализаторов.