Написать класс DivStr, унаследованный от str, который поддерживал бы операцию деления «//» и остатка от деления «%». Деление на N должно возвращать список из N подстрок одинаковой наибольшей длины, на которые можно разделить исходную строку, а остаток — оставшуюся концевую подстроку меньшей длины (возможно, пустую).
Дополнительное требование: все пользовательские (не начинающиеся на "__") методы str, которые возвращают строку, должны возвращать экземпляр DivStr. Это же требование распространяется на методы __getitem__, __add__, __mul__ и __rmul__. См. советы и комментарии в полном условии задачи.
Подсказка 1: для «//» есть отдельный спецметод
Подсказка 2: мне было лень переписывать все методы, поэтому я просто прошёлся циклом по str.__dict__, выбрал оттуда callable-ы (с именами либо без "__", либо из приведённого в условии множества), тупо обернул их в проверку вида «вернуло строку? тогда преобразуем в DivStr!», а результат положил в locals() этого класса.
XcDf QWEa sdER Tdfg RTY ERT dfg RTY y cD fQ WE
Спойлер: