# -*- coding: utf-8 -*-
# @File : builtin-isinstance-example.py
# @Date : 2018-09-20
# @Author : Peng Shiyu
# 用isinstance 函数,检查一个对象是不是给定类(或其子类)的实例
class A(object):
pass
class B(A):
pass
a = A()
b = B()
# 判断类型
print(type(A))
print(type(B))
print(type(a))
print(type(b))
"""
<type 'type'>
<type 'type'>
<class '__main__.A'>
<class '__main__.A'>
"""
# 判断实例
print(isinstance(a, A))
print(isinstance(b, A))
print(isinstance(b, B))
print(isinstance(A, type))
"""
True
True
True
True
"""
# issubclass 函数 检查一个类对象是否与给定类相同,或者是给定类的子类
print(issubclass(A, A))
print(issubclass(A, B))
print(issubclass(B, A))
"""
True
False
True
"""