我正在尋找一種方便的方法來刪除包含在兩個字典中的類對象的實例。當我從一個字典刪除對象實例時,我應該在第二個字典中自動刪除。這無論如何可能嗎?刪除包含在Python中的兩個字典中的類對象實例
class node():
def __init__(self, vID):
self.vID = vID
def __hash__(self):
return hash(self.vID)
def __eq__(self, other):
return self.vID == other.vID
class structure():
def __init__(self):
self.point_index_a = {}
self.point_index_b = {}
def add_point(self,x,y):
x_object = node(x)
self.point_index_a[x_object] = None
self.point_index_b[x_object] = None
def a_iter(self):
for k,v in self.point_index_a.iteritems():
print k,v
def b_iter(self):
for k,v in self.point_index_b.iteritems():
print k,v
mg = structure()
mg.add_point(1, 8)
mg.add_point(3, 4)
# point index a
for k,v in mg.point_index_a.iteritems():
print k,v
# point index b
for k,v in mg.point_index_b.iteritems():
print k,v
to_del = mg.point_index_a.iterkeys().next()
del to_del
# point index a, object to_del still exists in both dicts
for k,v in mg.point_index_a.iteritems():
print k,v
# point index b
for k,v in mg.point_index_b.iteritems():
print k,v
我建議做刪除structure'的'一個實例方法。 – jonrsharpe 2014-10-09 10:17:48
嗨喬恩,謝謝你的回覆。我剛剛嘗試了你的建議,不幸的是它沒有奏效。你可以詳細說明甚至提供一個基於我的代碼的例子嗎? – 2014-10-09 10:25:29