object.__int__(self)object.__float__(self)-
Вызывается для реализации встроенных функций
complex(),int()иfloat(). Должен возвращать значение соответствующего типа.
object.__index__(self)-
Вызывается для реализации
operator.index(), а также всякий раз, когда Python необходимо преобразовать числовой объект в целочисленный без потерь (например, при срезах или во встроенных функцияхbin(),hex()иoct()). Наличие этого метода указывает на то, что числовой объект имеет целочисленный тип. Должен возвращать целое число.Если
__int__(),__float__()и__complex__()не определены, то соответствующие встроенные функцииint(),float()иcomplex()возвращаются к__index__().
object.__round__(self[, ndigits])object.__trunc__(self)object.__floor__(self)object.__ceil__(self)-
Вызывается для реализации встроенной функции
round()иmathфункцийtrunc(),floor()иceil(). Если ndigits не передан__round__()всем этим методам, они должны возвращать значение объекта, усеченное доIntegral(обычноint).Изменено в версии 3.14:
int()больше не делегирует полномочия__trunc__()методу.