-
Notifications
You must be signed in to change notification settings - Fork 11
Expand file tree
/
Copy pathissubclass函数详解.py
More file actions
37 lines (29 loc) · 962 Bytes
/
issubclass函数详解.py
File metadata and controls
37 lines (29 loc) · 962 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
'''
描述
issubclass() 方法用于判断参数 class 是否是类型参数 classinfo 的子类。
语法
以下是 issubclass() 方法的语法:
issubclass(class, classinfo)
参数
class -- 类。
classinfo -- 类。
返回值
如果 class 是 classinfo 的子类返回 True,否则返回 False。
'''
class A:
pass
class B(A):
pass
class C(A):
pass
print(issubclass(B, A)) # 返回 True
print(issubclass(C, A)) # 返回 True
print(issubclass(C, B)) # 返回 False
#2.class参数是classinfo的子类,并且classinfo是元组
print(issubclass(C, (A, object))) #返回 True
print(issubclass(C, (A, int, object))) #返回 True
print(issubclass(C, (int, str))) #返回 False
print(issubclass(C, (int, str, type))) #返回 False
#print(issubclass(C, (1, A)))
#报错 TypeError: issubclass() arg 2 must be a class or tuple of classes
#参考简书 https://www.jianshu.com/p/4c425bbdd773