properies for dict member
Verfasst: Sonntag 31. August 2008, 15:31
Hallo,
ist es moeglich die properties fur meien class so einzurichten das die setter methode aufgerufen wirde wenn eine element des dicts einen neuen wert zugeweisen bekommen?
Beispiel:
Die setter wird ja ausgeführt wenn ich coor einen neuen wert zuweise:
testing.coor = 'neuerWert'
Wenn ich jedoch einem element in dem dict einen neuen wert zuweise wird die setter nicht ausgefuehrt:
testing.coor['groupId'] = 'newGroupId'
Gibt es da ne möglichkeit das auch fuer diesen fall die Setter aufgreufen wird?
ist es moeglich die properties fur meien class so einzurichten das die setter methode aufgerufen wirde wenn eine element des dicts einen neuen wert zugeweisen bekommen?
Beispiel:
Code: Alles auswählen
class dependency_object(object):
def __init__(self, xml):
self.xml = xml
def compare_to(self, other, with_version = False):
if self.coor['groupId'] == other.coor['groupId']:
if self.coor['artifactId'] == other.coor['artifactId']:
if with_version:
if self.coor['version'] == other.coor['version']:
return True
else:
return False
else:
return False
def get_coor(self):
return apf.getCoordinates_as_dict(self.xml)
def set_coor(self, new):
print 'neuer wert', new
coor = property(get_coor, set_coor)
testing.coor = 'neuerWert'
Wenn ich jedoch einem element in dem dict einen neuen wert zuweise wird die setter nicht ausgefuehrt:
testing.coor['groupId'] = 'newGroupId'
Gibt es da ne möglichkeit das auch fuer diesen fall die Setter aufgreufen wird?