Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #17342
| From | Peter Otten <__peter__@web.de> |
|---|---|
| Subject | Re: Class: @property -> .__dict__ |
| Date | 2011-12-16 10:32 +0100 |
| Organization | None |
| References | <ad04c206-dbfd-4e49-b365-943b47844c41@n6g2000vbg.googlegroups.com> <4eeb0949$0$29979$c3e8da3$5496439d@news.astraweb.com> <3fe1021b-75ae-4e3d-a5b0-175ad00aefa4@i6g2000vbh.googlegroups.com> <08b0a976-dd2a-4728-b865-4d04f4e5b7fb@n10g2000vbg.googlegroups.com> |
| Newsgroups | comp.lang.python |
| Message-ID | <mailman.3719.1324027975.27778.python-list@python.org> (permalink) |
Ulrich wrote:
> if I replace it to
> def attributelist(self):
> # find all attributes to the class that are of type numpy
> arrays:
> return [attr for attr in dir(self) if
> isinstance(getattr(self, attr), numpy.ndarray)]
>
> it crashes going into some kind of endless loop.
>
> Do you happen to have any idea?
dir(self) finds an attribute named "attributelist", getattr(self,
"attributelist") then tries to calculate the value of that attribute,
invokes dir(self) which finds an attribute named "attributelist" and so on
ad infinitum or the stack overflows. Try (untested)
@property
def attributelist(self):
return [attr for attr in dir(self) if attr != "attributelist" and
isinstance(getattr(self, attr), numpy.ndarray)]
to avoid the infinite recursion.
Back to comp.lang.python | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Class: @property -> .__dict__ Ulrich <ulrich@dorda.net> - 2011-12-16 00:52 -0800
Re: Class: @property -> .__dict__ Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2011-12-16 09:03 +0000
Re: Class: @property -> .__dict__ Ulrich <ulrich.dorda@gmail.com> - 2011-12-16 01:11 -0800
Re: Class: @property -> .__dict__ Ulrich <ulrich.dorda@gmail.com> - 2011-12-16 01:14 -0800
Re: Class: @property -> .__dict__ Peter Otten <__peter__@web.de> - 2011-12-16 10:32 +0100
Re: Class: @property -> .__dict__ Ian Kelly <ian.g.kelly@gmail.com> - 2011-12-16 09:23 -0700
Re: Class: @property -> .__dict__ Thomas Rachel <nutznetz-0c1b6768-bfa9-48d5-a470-7603bd3aa915@spamschutz.glglgl.de> - 2011-12-16 11:02 +0100
csiph-web