issubclass funny business

Les Schaffer godzilla at
Tue Apr 11 11:24:20 EDT 2000

I have the following class hierarchy:

------ in module FileScanner -----

class StandardArrayFileScanner(ArrayFileScanner):

--------- in module cie ----------

from FileScanner import StandardArrayFileScanner

class CIE_Standards(StandardArrayFileScanner):

class Photopic(CIE_Standards):

class CIE(CIE_Standards):

but when i need to test whther an object is an instance of a subclass
of StandardArrayFileScanner:

        # make sure std is of the correct type
        if not issubclass(std.__class__, StandardArrayFileScanner):
            import cie
            print std.__class__, cie.CIE.__bases__
	    raise NotStandardArrayError

but it doesnt work, even though std is of type cie.CIE :

(gustav)~/Engineering/dspring/stoplite/matlab/Jue-Data/: python

cie.CIE (<class cie.CIE_Standards at 813b320>,)  <=== result of print stmt


les schaffer

More information about the Python-list mailing list