Python子类判断issubclass和实例判断isinstance

简介: Python子类判断issubclass和实例判断isinstance

1、继承关系


# -*- coding: utf-8 -*-
class Animal(object):
    pass
class Cat(Animal):
    pass
class Dog(Animal):
    pass
cat = Cat()

2、子类判断

issubclass(x, A_tuple)


print(issubclass(Cat, Animal))  # True
print(issubclass(Cat, Dog))  # False
# 两种方式等价
print(issubclass(Cat, (Animal, Dog)))  # True
print(issubclass(Cat, Animal) or issubclass(Cat, Dog))  # True

3、实例判断

isinstance(x, A_tuple)


print(isinstance(cat, Animal))  # True
print(isinstance(cat, Cat))  # True
print(isinstance(cat, Dog))  # False
# 两种方式等价
print(isinstance(cat, (Cat, Dog)))  # True
print(isinstance(cat, Cat) or isinstance(cat, Dog))  # True

4、获取类的子类


# -*- coding: utf-8 -*-
class A(object):
    pass
class B(A):
    pass
class C(A):
    pass
for clazz in A.__subclasses__():
    print(clazz.__name__)
# B C
相关文章
|
1天前
|
数据挖掘 vr&ar C++
让UE自动运行Python脚本:实现与实例解析
本文介绍如何配置Unreal Engine(UE)以自动运行Python脚本,提高开发效率。通过安装Python、配置UE环境及使用第三方插件,实现Python与UE的集成。结合蓝图和C++示例,展示自动化任务处理、关卡生成及数据分析等应用场景。
16 5
|
1月前
|
测试技术 API 数据安全/隐私保护
Python连接到Jira实例、登录、查询、修改和创建bug
通过使用Python和Jira的REST API,可以方便地连接到Jira实例并进行各种操作,包括查询、修改和创建Bug。`jira`库提供了简洁的接口,使得这些操作变得简单易行。无论是自动化测试还是开发工作流的集成,这些方法都可以极大地提高效率和准确性。希望通过本文的介绍,您能够更好地理解和应用这些技术。
128 0
|
2月前
|
Python
Python中的push方法详解与实例
Python中的push方法详解与实例
41 3
|
2月前
|
Python
Python 练习实例100
Python 练习实例100
|
2月前
|
Python
Python 练习实例98
Python 练习实例98
|
2月前
|
数据处理 Python
Python内置时间模块:Datetime实例详解(一)
Python内置时间模块:Datetime实例详解(一)
35 1
|
2月前
|
Python
Python 练习实例99
Python 练习实例99
|
3月前
|
Python
Python 练习实例94
Python 练习实例94
|
3月前
|
Python
Python 练习实例92
Python 练习实例92
|
3月前
|
Python
Python 练习实例93
Python 练习实例93
下一篇
DataWorks