Как стать автором
Обновить

Комментарии 5

Спасибо, познавательно.
https://habrastorage.org/r/w1560/getpro/habr/upload_files/01a/21b/f36/01a21bf36206b6a31358b3980d311cfc.png
А в двух словах чем это отличается от обычных дженериков в 3.10?

import typing

T = typing.TypeVar("T")


class List(typing.Generic[T]):
    def __init__(self):
        self.data: list[T] = []

    def add(self, item: T):
        self.data.append(item)

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


l = List[int]()
# l.add("q") <- Expected type int 
l.add(1)
res = l.pop()  # res: int
print(l.pop())

https://peps.python.org/pep-0646/#summary-examples

Тут более удачные примеры

Спасибо

В статью запихнули неправильный пример. Этот пример в докладе приводится как то, что уже было раньше, а не как теперь можно.


Статью писал безграмотный копирайтер, не особо внимательный и погружённый в тему.


транспонирование кода из второго питона в третий

Транспонирование кода — это что-то новенькое. :)

Ответственность за «транспонирование» беру полностью на себя! Это я в докладе сказал это слово :)) (пруф: https://youtu.be/osVUoYNAumA?t=468)

Термина такого действительно нет, не знаю, почему именно оно пришло мне в голову. Ну приглючило, бывает :)

Давайте заменим на «перевод».

Картинку тоже попросил заменить на актуальную, спасибо большое за внимательность!

Зарегистрируйтесь на Хабре, чтобы оставить комментарий