wollte eine My_Rect Klasse machen, die von sich aus auch x und y floats stored als Attribute. Bekomme da einen komischen Fehler...
Code: Alles auswählen
class My_Rect(Rect):
def __init__(self, rect, offsets=(0,0)):
Rect.__init__(self, rect)
self.offsets = offsets
print offsets
print self.offsets
self._init_pos_()
def _init_pos_(self):
self.x = float(self.left + self.offsets[0])
self.y = float(self.top + self.offsets[1])
def __setattr__(self, key, value):
if key == "x":
self.x = value
self.topleft = (int(self.x) - self.offsets[0], int(self.y) - self.offsets[1])
elif key == "y":
self.y = value
self.topleft = (int(self.x) - self.offsets[0], int(self.y) - self.offsets[1])
Traceback (most recent call last):
File "<pyshell#47>", line 1, in <module>
nu = My_Rect(ni)
File "<pyshell#45>", line 7, in __init__
print self.offsets
AttributeError: 'My_Rect' object has no attribute 'offsets'
Wieso wird self.offsets nicht zugewiesen da?