这个该怎么传值达到删除的效果?
请看@modulesGetSetDel.deleter
class Computer:
def __init__(self) -> None:
self.modules = {"cpu":"intel", "内存":"镁光", "硬盘":"970-pro"}
self.moduleslist = []
@property
def modulesGetSetDel(self):
self.moduleslist.clear()
get_loops = [i for i in self.modules]
for ii in range(len(self.modules)):
self.moduleslist.append(get_loops[ii] + ": " + self.modules[get_loops[ii]])
return self.moduleslist
@modulesGetSetDel.setter
def modulesGetSetDel(self, key_value):
self.modules[key_value[0]] = key_value[1]
"""
deleter这一块调用不起来
"""
@modulesGetSetDel.deleter
def modulesGetSetDel(self, key_value):
del self.moduleslist[key_value]
aa = Computer()
print(aa.modulesGetSetDel)
aa.modulesGetSetDel = ["机箱", "海盗船"]
print(aa.modulesGetSetDel)
"""
这么写会报错..有没有人救救孩子
是不是只能用@staticmethod 来进行删除了?
"""
del aa.modulesGetSetDel("机箱")
print(aa.modulesGetSetDel)