046描述符第1、2题的细节问题
问题一:(t1)这段代码中def __set__(self, instance, value):
filename = "%s_record.txt" % self.name
with open(self.filename, 'a', encoding='utf-8') as f:
f.write("%s 变量于北京时间 %s 被修改, %s = %s\n" % \
(self.name, time.ctime(), self.name, str(value)))
self.val = value
将with open(...) ...f: 放在 self.val = value前面,也就是先保存了文件,再修改了值,为什么在文件中显示的依然是修改后的属性和对应的值?
问题二:(t2)
不太能理解在__delete__部分,为何要MyDes.saved.remove(self.name),而不直接 del self.name 呢?直接 del self.name 会有什么后果? 我猜会报错,你要删除的是列表的里面的内容,而不是MyDes类的属性
页:
[1]