[Python-Dev] Odd new-style class __new__ behavior
Michael Hudson
mwh@python.net
30 Mar 2002 15:08:04 +0000
Kevin Jacobs <jacobs@penguin.theopalgroup.com> writes:
> Suppose I define:
>
> class Foo(object):
> def __new__(cls):
> return 1
>
> class Bar(object):
> def __new__(cls):
> return [1,2,3]
>
> Python 2.2 returns:
> print Foo()
> > 1
> print Bar()
> > []
>
> I would expect that Bar() should return [1,2,3]. Am I running into some
> clever undocumented feature or a bug?
Is tp_init being called on the returned list?
Cheers,
M.
--
But since I'm not trying to impress anybody in The Software Big
Top, I'd rather walk the wire using a big pole, a safety harness,
a net, and with the wire not more than 3 feet off the ground.
-- Grant Griffin, comp.lang.python