Почему код в модулях python так сложен для чтения?
Возьмем, к примеру, модуль «itertools». Когда вы используете класс combinations (или любой другой класс) модуля itertools в своем коде и нажимаете Ctrl + Лкм по нему, открывается файл itertools, где вы можете увидеть сам класс. Но весь класс - дандер методы __new__. Я заметил, что этот класс наследуется от другого класса под названием «Generic», который имеет тип «_SpecialForm». Я посмотрел на этот класс _SpecialForm, и он ведет... никуда? В коде дандер методов просто многоточие (...). Я вообще не понимаю, как это работает. Мне удалось воссоздать класс продукта модуля itertools. Почему они делают классы такими сложными, если вы можете просто вставить код в класс?
P.s. текст выглядит формальным и аккуратным, т.к. я постил этот же текст в реддит на английском и и потом перевел его в переводчике
Все просто - itertools под капотам написан не на Python, а на С, поэтому ты и не видишь его код.
Да он везде сложный, если программа более-менее большая. Вон, глянь код на ассемблере. Там нет классов, но код просто пипец какой монотонный