newbe question
Don O'Donnell
donod at home.com
Wed Oct 10 20:16:05 EDT 2001
More information about the Python-list mailing list
Wed Oct 10 20:16:05 EDT 2001
- Previous message (by thread): newbe question
- Next message (by thread): changing `import' to use other than .py
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
John Thingstad wrote:
>
> I wrote the following function to use polymorphism.
>
> def rootClassName(var):
> """Return the name of the root of a sigle inheretance class tree.
> If multiple inheritance is used the leftmost class is traversed."""
> if type(var) is ClassType:
> cls = var
> while len(cls.__bases__) != 0:
> cls = cls.__bases__[0]
> return cls.__name__
> else:
> return ""
>
> Is there a built in function to do this ?
>
Not that I know of.
But just a note on Pythonic style --
Okay (but a lot of unnecessary processing cycles going on here):
while len(cls.__bases__) != 0:
Better (!=0 is redundant at the end of a logical expression):
while len(cls.__bases__):
Best (an empty sequence evaluates as false in a boolean context):
while cls.__bases__:
Cheers,
Don
- Previous message (by thread): newbe question
- Next message (by thread): changing `import' to use other than .py
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-list mailing list