isinstance 替代方法:检查返回为 flase 的类是否为父类或子类

2024-09-29 06:23:28 发布

您现在位置:Python中文网/ 问答频道 /正文

首先让我展示一下isinstance()是如何工作的

class superclass:
    def __init__(self, var):
        self.var = var

class subclass(p):
    pass

obj = subclass("pinoy")

这就是iInstance的工作原理

>>> isinstance (obj, superclass)
True

这里,obj主要是subclass的一个实例。因为,subclass继承自superclass

isinstance(obj, superclass)返回True

是否有任何方法可以检查对象是否主要属于指定的类,否则返回Flase


Tags: 实例selftrueobjinitvardefpass
1条回答
网友
1楼 · 发布于 2024-09-29 06:23:28

您可以使用type

class superclass:
    def __init__(self, var):
        self.var = var

class subclass(superclass):
    pass
obj = subclass("pinoy")

print(type(obj))
#<class '__main__.subclass'>

type(obj) == subclass
# True

type(obj) == superclass
# False

相关问题 更多 >