Skip to main content
 首页 » 编程设计

python之使用继承类确定 Python 类的类型

2025年05月04日11bonelee

我有多个类都继承自一个基类,这是一个简单的例子:

class DataSource(object): 
    pass 
class TableDataSource(DataSource): 
    pass 

如果我想确定这些类是否属于 DataSource 类型,我认为我可以执行以下操作:

>>> tdl = TableDataSource() 
>>> print tdl is DataSource 
False 

所以我在这里返回 false,我如何检查是否所有从 DataSource 继承的类都是数据源类型对象,而不必专门检查每个类类型?这将使其他功能更容易检查对象类型。

谢谢。

请您参考如下方法:

关于 is 的事情是它正在测试两个对象是否引用相同的东西。 DataSource 该类是一个对象。因此,只有引用 DataSource 本身的东西才会比较真实。你应该使用的是像这样的 isinstance:

  isinstance(x, DataSource)