A question about Python Classes

Kyle T. Jones onexpadREMOVE at EVOMERyahoodotyouknow.com
Fri Apr 22 09:49:07 EDT 2011


Ethan Furman wrote:
> chad wrote:
>> Let's say I have the following....
>>
>> class BaseHandler:
>>     def foo(self):
>>         print "Hello"
>>
>> class HomeHandler(BaseHandler):
>>     pass
>>
>>
>> Then I do the following...
>>
>> test = HomeHandler()
>> test.foo()
>>
>> How can HomeHandler call foo() when I never created an instance of
>> BaseHandler?
> 
> You don't need to create an instance of BaseHandler.  You have the
> class, Python knows you have the class -- Python will look there if the
> subclasses lack an attribute.
> 
> ~Ethan~
> 

Really?  That's not at all how I thought it worked in Python 
(post-instantiation referencing of class and superclass code...)

Cheers.



More information about the Python-list mailing list