TGViewer
CPython notes CPython notes @cpython_notes · 2.39K subscribers
Post #6 2.66K
К сообщению выше, стоит сказать что type теперь у нас soft-keyword.
Все это пришло вместе с pep-695.
Если смотреть с точки зрения лаконичности, этот пеп имеет смысл.
В основном, теперь просто не надо создавать тайпвары.
Окей, но не стоит забывать что у тайпваров можно было указать ко/контравариантность. А что с вариантностью в новом синтаксисе? Кстати, вот он -
class Foo[T: int]:
def method(self, arg: T) -> T:
return arg

тоже и для функций
def foo[T: int](arg: T) -> T:
return arg

И к сожалению (как минимум, моему) фичи вида +T -T ~T не доступны. То есть, в таком виде не укажешь вариантность типа.
В итоге, мы имеем <Автовариантность>. На чьи плечи она ложится? На плечи тайпчекеров.
Почему так сделали? Потому что тему вариантности посчитали достаточно сложной и запутанной.
Выводы делайте сами.

По перфомансу с точки зрения создания класса/функции с таким синтаксисом (именно создания класса/функции, а не создания инстанса/вызова функции).
Перфоманс в этом плане, конечно, упал. Байткод у классов/функций которые написаны в "новом стиле" чуть ли не в 2 раза длиннее. Но, так как создание класса/функции у нас происходит один раз, не то что бы это как-то влияло на общую картину(я думаю, что в кодогенерации, результат которой исполняется на лету, никто не использует тайпхинты)
А type как soft-keyword просто замена TypeAlias. Не считаю это тем изменением которое было необходимо.
  • 👍 3
More from @cpython_notes
  1. Sep 8, 2026https://discuss.python.org/t/docstrings-for-type-aliases/108901 По моему мнению адекватная…
  2. Sep 7, 2026https://peps.python.org/pep-0828/ Был принят. Теперь можно будет делать так async def agen…
  3. Aug 23, 2026https://blog.python.org/2026/08/the-python-documentation-is-now-available-in-russian/ Внез…
  4. Aug 20, 2026https://github.com/python/peps/pull/5101 Я бы сказал пушка. За ссылку спасибо @miryanovsn
  5. Aug 14, 2026Никита Соболев aka автор @opensource_findings собрал папку с русскоязычными сообществами п…
  6. Aug 5, 2026https://peps.python.org/pep-0797/ был отклонен руководящим советом.
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →