On 13 Sep, 15:19, Bahadir <bilgehan.bal...@gmail.com> wrote: > Hi, > > I have a class: > > class second: > a = None > b = None > > class first: > array = [] > > I populate the array in first class with instances of second, then > save by: > > shelve = shelve.open(), > shelve["first"] = myfirst > shelve.close() > > When I reopen the shelve from another script, the first class is > there, but array has no elements. If I reopen the shelve in the same > script right after shelve.close(), the elements are there. > > Also there are no errors printed out. > > Any idea why the array of instances are lost? > > Thanks, > > Bahadir
You most likely want 'array' to be an instance level and not class level attribute. class first(object): def __init__(self): self.array = [] myfirst = first() myfirst.array.append(23423) etc... hth, Jon. -- http://mail.python.org/mailman/listinfo/python-list