Кажущаяся тривиальная проблема, вызывая int __init__ в PythonPython

Программы на Python
Anonymous
 Кажущаяся тривиальная проблема, вызывая int __init__ в Python

Сообщение Anonymous »

Соблюдайте следующий код Python 2.x: < /p>

Код: Выделить всё

class Angle(int):
"""Basic Angle object: Angle(number)"""

def __init__(self, angle):
angle %= 360
super(Angle, self).__init__(angle)
Довольно простой материал, угол - это в основном просто int , который никогда не превышает 360 или ниже 0. Это __init __ просто убедится, что вход Угол соответствует условиям, перечисленным ранее. Но по какой -то причине приведенный выше код дает мне следующий вывод: < /p>
>>> a = Angle(322)
>>> a
322
>>> b = Angle(488)
>>> b
488
< /code>
Почему это произойдет? Код казался мне таким тривиальным, но, может быть, я просто упускаю что -то действительно очевидное.

Подробнее здесь: https://stackoverflow.com/questions/219 ... -in-python

Вернуться в «Python»