Inheriting Classes Across Files
DoubleM
DoublemPI at netscape.net
Thu Mar 25 20:07:48 EST 2004
Tina:
Instead of "import super_class", I think you need
"from super_class import base_class", or
"from super_class import *", or if you want to use "import super_class",
then define the derived class as
"class derived_class(super_class.base_class)"
Mike
> Tina wrote:
> I tried that as I understand it. I'm sure I'm making a silly error in all
> this. Here is a simple example of what I'm trying:
>
> --- (File super_class.py) ---
>
> class base_class:
>
> def sample():
> return "Returned!"
>
> --- (File sub_class.py) ---
>
> import super_class
>
> class derived_class(base_class):
>
> def sample2():
> return "Returned Twice!"
>
> --- (End) ---
>
> Traceback (most recent call last):
> File "/home/tina/python/test/sub_class.py", line 3, in -toplevel-
> class derived_class(base_class):
> NameError: name 'base_class' is not defined
>
>
> John Roth wrote:
>
>
>>"Tina" <bad_addy at no_domain.com> wrote in message
>>news:E6K8c.748$Dv2.185 at newsread2.news.pas.earthlink.net...
>>
>>>In my program I need derived classes to inherit from the super class.
>>>
>>>I can do this but I'd like to split the super class into it's own file.
>>>
>>>How do you do this? When I split the code I start getting errors.
>>
>>The module with the superclass has to be imported before
>>the subclass is defined.
>>
>>Be very careful you don't get into an import loop.
>>That way lies madness.
>>
>>John Roth
>>
>
More information about the Python-list
mailing list