vasudevram wrote: > On Wednesday, April 24, 2013 6:20:36 AM UTC+5:30, alex23 wrote: >> >> A nested class definition will be defined as an attribute of the class >> >> its defined within: >> >> >> >> >>> class Outer(object): >> >> ... foo = 'FOO' >> >> ... class Inner(object): >> >> ... bar = 'BAR' >> >> ... >> >> >>> Outer.Inner
> Just one other doubt: > >> >>> Outer.Inner >> >> <class '__main__.Inner'> >> > > In the above output, I would have thought Python would print > __main__.Outer.Inner or Outer.Inner instead of __main__.Inner, since Inner > is an attribute of Outer? The Python developers seem to agree with you and have made the compiler smart enough to accomodate your expectations in Python 3.3: $ cat tmp.py class Outer: class Inner: pass print(Outer.Inner) $ python3.2 tmp.py <class '__main__.Inner'> $ python3.3 tmp.py <class '__main__.Outer.Inner'> -- http://mail.python.org/mailman/listinfo/python-list