import time class BasicNotebook: def __init__(self): self.messages = {} def _addToNotes(self,touser,msgformat): if touser in self.messages: self.messages[touser].append(msgformat) else: self.messages[touser]=[msgformat] def addNote(self,touser,fromuser,msg): self._addToNotes(touser,[fromuser,msg]) def _readNotes(self,user,fmtstr): if not self.checkNotes(user): return [] ret = [] for messageI in self.messages[user]: ret.append(fmtstr.format(*messageI)) del self.messages[user] return ret def readNotes(self,user): return self._readNotes(user,"{0} left a message: {1}") def checkNotes(self,user): return user in self.messages.keys() class DatedNotebook(BasicNotebook): def addNote(self,touser,fromuser,msg): self._addToNotes(touser,[fromuser,msg,time.strftime("%H:%M:%S"),time.strftime("%A, %B %d, %Y")]) def readNotes(self,user): return self._readNotes(user,"{0} left a message at {2} on {3}: {1}")