H
hg
Hi all.
I have to put together some code that reads high scores from a saved
file, then gives the user the opportunity to add their name and score
to the high scores list, which is then saved.
Trouble is, I can't tell the program to read a file that doesn't
exist, that generates an error.
So I must have a file created, problem HERE is everytime the program
is run, it will overwrite the current list of saved high scores.
Advice would be much appreciated.
You can run this small script a few times to see that the file does not get
deleted
hg
import shelve
class Grades:
def __init__(self):
self.GRADES = 'GRADES'
self.m_gdb = shelve.open('MYGRADES.dat')
try:
self.m_grades = self.m_gdb[self.GRADES]
except:
self.m_grades = []
self.m_gdb[self.GRADES] = self.m_grades
self.m_gdb.close()
def Add(self, p_grade):
self.m_gdb = shelve.open('MYGRADES.dat')
self.m_grades.append(p_grade)
self.m_gdb[self.GRADES] = self.m_grades
self.m_gdb.close()
def Grades(self):
return self.m_grades
l_o = Grades()
print l_o.Grades()
l_o.Add(10)
print l_o.Grades()