Modifying Class Object
Duncan Booth
duncan.booth at invalid.invalid
Mon Feb 8 04:00:37 EST 2010
T <misceverything at gmail.com> wrote:
> Oops, this one was my fault - the object I was having the issues with
> was actually a shelve file, not a dictionary..so just re-assigning the
> variable isn't working, but re-writing the object to the shelve file
> does. So in this case, is there any way to just change a single
> value, or am I stuck rewriting the entry?
Either open the shelve with writeback=True or rewrite the entry.
Rewriting the entry isn't hard: you can just re-use the same value:
def changevalue():
for key in mytest.keys():
temp = mytest[key]
temp.param3 = "newvalue"
mytest[key] = temp
If you really are changing every item in the shelve using writeback=True
will be much simpler, but if you are only changing a few then just tell the
shelve that you've updated them as above.
--
Duncan Booth http://kupuguy.blogspot.com
More information about the Python-list
mailing list