isinstance()是一个内置的函数(BIF)。
它允许某个特定标识符是否包含某个特定类型的数据
如判断某个对象是不是列表、字典、整型等
>>> a = [1,2,3]
>>> b = 123
>>> c = {1:2,2:3}
>>> isinstance(a,list)
True
>>> isinstance(a,dict)
False
>>> isinstance(b,int)
True
>>> isinstance(c,dict)
True
>>>
实例:打印一个包含嵌套列表的列表的所有数据
a = [1,2,'c','b',['d',[5,6,[7,8]]],[3,4]]
for i in a:
while isinstance(i,list):
for j in i:
if isinstance(j,list) is False:
print(j)
else:
i = j
break #跳出最里层的for循环,执行while循环,否则,for循环走完,就会走最下面break,跳出整个while了
else:
break #跳出while循环,不然i由于一直是列表,那么就不停执行最里面的for循环,打印3,4
else:
print(i)
1
2
c
b
d
5
6
7
8
3
4