you can just check before issubclass() :
import types def myissubclass (c, sc): if type(c) != types.ClassType return False return issubclass (c, sc)
but I think it would be more pythonic to accept exceptions:
def myissubclass (c, sc): try: return issubclass (c, sc) except TypeError: return False
source share