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


            </div>
目录
相关文章
|
12天前
|
测试技术 API 数据安全/隐私保护
Python连接到Jira实例、登录、查询、修改和创建bug
通过使用Python和Jira的REST API,可以方便地连接到Jira实例并进行各种操作,包括查询、修改和创建Bug。`jira`库提供了简洁的接口,使得这些操作变得简单易行。无论是自动化测试还是开发工作流的集成,这些方法都可以极大地提高效率和准确性。希望通过本文的介绍,您能够更好地理解和应用这些技术。
48 0
|
1月前
|
Python
Python中的push方法详解与实例
Python中的push方法详解与实例
|
1月前
|
Python
Python 练习实例100
Python 练习实例100
|
1月前
|
Python
Python 练习实例98
Python 练习实例98
|
1月前
|
数据处理 Python
Python内置时间模块:Datetime实例详解(一)
Python内置时间模块:Datetime实例详解(一)
|
1月前
|
Python
Python 练习实例99
Python 练习实例99
|
2月前
|
Python
Python 练习实例97
Python 练习实例97
|
1月前
|
数据可视化 Python
Python绘制基频曲线——实例解析与应用探讨
Python绘制基频曲线——实例解析与应用探讨
|
1月前
|
开发者 Python
Python类和子类的小示例:建模农场
Python类和子类的小示例:建模农场
|
1月前
|
Python 容器
AutoDL Python实现 自动续签 防止实例过期释放 小脚本 定时任务 apscheduler requests
AutoDL Python实现 自动续签 防止实例过期释放 小脚本 定时任务 apscheduler requests
27 0