您当前的位置: 首页 >  Python

彭世瑜

暂无认证

  • 2浏览

    0关注

    2791博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

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

彭世瑜 发布时间:2020-04-09 16:47:30 ,浏览量:2

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
关注
打赏
1665367115
查看更多评论
立即登录/注册

微信扫码登录

0.1473s