Where does shelve look for unshelved class definitions?

BG nomail at nomail.net
Thu Feb 5 15:12:30 EST 2004


This looks like a problem I had recently. Please take a look at this 
news thread:

http://groups.google.com/groups?hl=nl&lr=&ie=UTF-8&oe=UTF-8&threadm=401d7d15%240%243257%2458c7af7e%40news.kabelfoon.nl&rnum=1&prev=/groups%3Fq%3Dunpickling%2Bbsddb%2Bgroup:comp.lang.python.*%26hl%3Dnl%26lr%3D%26ie%3DUTF-8%26oe%3DUTF-8%26group%3Dcomp.lang.python.*%26selm%3D401d7d15%25240%25243257%252458c7af7e%2540news.kabelfoon.nl%26rnum%3D1

I hope this link works ;-)

Berry.


Stuart Hungerford wrote:

> Hi all,
> 
> I have a python module foo.py which contains:
> 
>    class A(object): ...
>    class B(object): ...
> 
> As well as a class that uses shelve (which in turn is
> using dumbdbm):
> 
>    class foo(object): ...
>       // uses a shelve internally
> 
> The methods of foo shelve and restore A and B instances
> *but* shelve seems to be looking in the wrong places for
> the definitions of A and B when they're "unshelved",
> giving the error:
> 
>    AttributeError: 'module' object has no attribute 'A'
> 
> How can I persuade shelve to look in other namespaces for
> A and B?
> 
> Any advice much appreciated,
> 
> 
> Stu



More information about the Python-list mailing list