|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
红色字那句,为什么是return Value 不是 return self.Value
- import os
- import pickle
- class MyDes:
- saved = []
- def __init__(self, name = None):
- self.name = name
- self.filename = self.name + '.pkl'
- def __get__(self, instance, owner):
- if self.name not in MyDes.saved:
- raise AttributeError("%s 属性还没有赋值!" % self.name)
- with open(self.filename, 'rb') as f:
- value = pickle.load(f)
- [color=Red]return value[/color]
- def __set__(self, instance, value):
- with open(self.filename, 'wb') as f:
- pickle.dump(value, f)
- MyDes.saved.append(self.name)
- def __delete__(self, instance):
- os.remove(self.filename)
- MyDes.saved.remove(self.name)
复制代码
因为这个value就是方法里面的局部变量。。。
你value = pickle.load(f),然后返回value。
如果用self.value就是取类成员变量了,但是又没有定义这个成员变量。。。
|
|