folks, what's wrong with this?
Ani
anirbans at cs.ubc.ca
Thu Apr 1 17:52:23 EDT 2010
On Apr 1, 12:10 pm, Robert Kern <robert.k... at gmail.com> wrote:
> On 2010-04-01 13:56 PM, Ani wrote:
>
>
>
> > Hi All:
>
> > I am just a beginner in python. Can anyone please tell me what is
> > wrong with this piece of code?
>
> > import copy
> > class BaseDummyObject(object):
>
> > def __init__(self):
> > pass
>
> > def __getattr__(self, item):
> > try:
> > return self.__dict__.__getitem__(item)
> > except KeyError:
> > print "Attribute Error: attr %s of class %s non-existent!"
> > %(item,
>
> > self.__class__.__name__)
>
> You need to raise an AttributeError here. Otherwise, it implicitly returns None
> for all attributes not in the __dict__ and thus confusing the copy.deepcopy() code.
>
Thanks Robert. So I raised the exception and now everything looks
good. So what's happening here? When a certain attribute is not
available in the __dict__ and an exception is raised, who's catching
it?
Ani
More information about the Python-list
mailing list