import pickle
class Memo(object):
def __init__(self, name, date, thing):
self._id = 0
self.date = date
self.name = name
self.thing = thing
@property
def id(self):
return self._id
@id.setter
def id(self, val):
self._id = val
class MemoAdmin(object):
def __init__(self):
self.memo_list = self.load()
def add(self):
# self.memo_list =>属性进行操作
memo_date_list = MemoAdmin.deal_input_data()
memo = Memo(*memo_date_list)
memo.id = len(self.memo_list) + 1
self.memo_list.append(memo)
def del_memo(self):
def modify(self):
pass
def query(self):
@staticmethod
def deal_input_data():
input_memo = input('例如:1.1-cym-逛街:').strip()
input_list = input_memo.split('-')
if len(input_list) == 3:
return input_list
def print_all(self):
if len(self.memo_list) == 0:
print('备忘录中没有记录,请手动添加')
for memo in self.memo_list:
print(memo.id, memo.date, memo.name, memo.thing)
def save(self):
with open('memo.pkl', 'wb') as file:
file.write(pickle.dumps(self.memo_list))
return True
def load(self):
try:
with open('db.pkl', 'rb') as file:
memo_list = pickle.loads(file.read())
except Exception as e:
memo_list = []
return memo_list
def main():
admin = MemoAdmin()
menu_list = {
'1':'add',
'2':'del_memo',
'3':'modify',
'4':'query',
'5':'print_all',
'6':'quit'
}
print(menu_list)
while True:
select = input('请选择:')
if select == '6':
admin.save()
break
if select in menu_list:
run = getattr(admin, menu_list.get(select), None)
if run:
run()
else:
print('选项不存在')
else:
print('请重新输入')
if __name__ == "__main__":
main()
这个python程序删除,修改,查询操作应该怎么写?最好有完整的代码