Форум сайта python.su
узнал что в Питоне 3.2 есть такая замечательная штука как property.
Очень обрадовался, стал использовать. Но не получается сделать property для массива.
class C(object):
_x = []
@property
def x(self,i): return self._x[i]
@x.setter
def x(self,i, value): self._x[i] = value
@x.deleter
def x(self): del self._x
def add(self,value):
self._x.append(value)
Maseges = C()
Maseges.add('mamamia')
a = Maseges.x[0]
class TMasegeList(object):
_x = []
def getx(self,i): return self._x[i]
def setx(self,i, value): self._x[i] = value
def delx(self): del self._x
x = property(getx, setx, delx, "Documentation")
def add(self,value):
self._x.append(value)
Maseges = TMasegeList()
Maseges.add('mamamia')
a = Maseges.x[0]
print(a)
Офлайн
class C(object):
_x = []
@property
def x(self):
return self._x
@x.setter
def x(self, i, value):
self._x[i] = value
@x.deleter
def x(self):
del self._x
def add(self,value):
self._x.append(value)
Maseges = C()
Maseges.add('mamamia')
a = Maseges.x[0]
print a
Офлайн