On Thu, Apr 4, 2013 at 8:01 AM, Chris Angelico <ros...@gmail.com> wrote:

> On Fri, Apr 5, 2013 at 1:59 AM, Guido van Rossum <gu...@python.org> wrote:
> > On Thu, Apr 4, 2013 at 7:47 AM, Chris Angelico <ros...@gmail.com> wrote:
> >> Is there any argument that I can pass to Foo() to get back a Bar()?
> >> Would anyone expect there to be one? Sure, I could override __new__ to
> >> do stupid things, but in terms of logical expectations, I'd expect
> >> that Foo(x) will return a Foo object, not a Bar object. Why should int
> >> be any different? What have I missed here?
> >
> >
> > A class can define a __new__ method that returns a different object. E.g.
> > (python 3):
> >
>
> Right, I'm aware it's possible. But who would expect it of a class?
>

If it's documented you could expect it.

-- 
--Guido van Rossum (python.org/~guido)
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to