Код: Выделить всё
class Foo(object):
def __len__(self) -> MyCoolIntType:
return MyCoolIntType(self.size)
Происходит то, что я себе представляю. заключается в том, что когда я вызываю len из stdlib, внутренняя реализация выполняет проверку типа, чтобы гарантировать, что результат obj.__len__() является целым числом и вызывает исключение.
Поэтому, я думаю, мой вопрос также можно интерпретировать как «Как мне повторно объявить функцию (
Код: Выделить всё
len()PS: Я знаю, что могу обойти это, просто объявив размер свойства в своем классе, но я любопытно, можно ли использовать len для возврата MyCoolIntType
Подробнее здесь: https://stackoverflow.com/questions/790 ... -in-python