品易云推流 关闭
文章详情页
文章 > Python基础教程 > python issubclass函数怎样判断参数?

python issubclass函数怎样判断参数?

issubclass函数 Python

头像

小妮浅浅

2021-04-21 13:41:302212浏览 · 0收藏 · 0评论

1.说明:

1)函数功能用于判断一个类型对象是否是另一个类型对象的子类,class参数表示需要检查的类型对象,calssinfo参数表示需要对比类型对象。  

2)如果class参数是classinfo类型对象(或者classinfo类对象的直接、间接、虚拟子类)的实例,返回True。

>>> issubclass(bool,int)
True
>>> issubclass(bool,(str))
False
 
>>> class A:
    pass
>>> class B(A):
    pass
>>> issubclass(B,A)
True

2.语法

issubclass(class, classinfo)

3.参数

  • class -- 类。

  • classinfo -- 类。

4.返回值

如果 class 是 classinfo 的子类返回 True,否则返回 False。

5.实例

# issubclass(class, classinfo)
# 如果 class 是 classinfo 的 (直接、间接或 虚拟) 子类则返回 True。 类会被视作其自身的子类。 classinfo 也以是类对象的元组,在此情况下 classinfo 中的每个条目都将被检查。 在任何其他情况下,都将引发 TypeError 异常。
 
# 如果 class 是 classinfo 的 (直接、间接或 虚拟) 子类则返回 True。
class A:
    pass
class B(A):
    pass
class C(B):
    pass
print(f'{ issubclass(B, A) = }')
print(f'{ issubclass(C, B) = }')
print(f'{ issubclass(C, A) = }')
print(f'{ issubclass(C, int) = }')
# 类会被视作其自身的子类。
print('---')
print(f'{ issubclass(A, A) = }')
# classinfo 也以是类对象的元组,在此情况下 classinfo 中的每个条目都将被检查。
print('-----')
print(f'{ issubclass(B, (int, str)) = }')
print(f'{ issubclass(B, (int, str, A)) = }')
print(f'{ issubclass(B, (int, str, (float, A))) = }')
# 在任何其他情况下,都将引发 TypeError 异常。
print('-----------')
# print(f'{ issubclass(B, 123) = }')
# print(f'{ issubclass(B, [int, str, A]) = }')

以上就是我们使用issubclass函数判断参数的方法,根据是否属于另一个类的子类,输出true或者是false的结果,相信大家已经基本有所了解了。

(推荐操作系统:windows7系统、Python 3.9.1,DELL G3电脑。)


关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

底部广告图