On Sep 17, 6:17 am, smalltalk <[EMAIL PROTECTED]> wrote: > >>> import shelve > >>> sf = shelve.open('e:/abc.db') > >>> for i in range(10000): > > ... sf[str(i)]=i > ...>>> sf.close() > >>> sf = shelve.open('e:/abc.db') > >>> sf.clear() > >>> sf > > {} > the abc.db is always 312k though i have use clear(), how can i shrink > the space?
shelve doesn't have any way of doing that. the only option is to read all items from your shelve and write them to a new one. -- http://mail.python.org/mailman/listinfo/python-list