处理嵌套列表
如何显示嵌套列表的每一项:
1.在列表中查找列表
每次处理列表中的一项时,都要查看这一项本身是不是另一个列表。
如果这一项确实是一个列表,那么在处理列表中的下一项之前,先要处理这个列表。
Python确定何时做什么可以采用我们熟悉的if…else…模式:
if 某个条件满足 :
”true“组
else:
”false“组
不过,要检查什么条件呢?
题目是要求用一种方法确定当前的列表项是不是一个列表,因此,可以用isinstance() BIF,它允许检查某个特定标识符是否包含某个特定类型的数据。
简单了解它是如何工作:
2.使用一个if语句和isinstance() BIF处理嵌套列表:
我们可以看到,打印到屏幕上的最后一行还是一个嵌套列表,那么,如何处理多层嵌套列表呢?
一种我们可以想到的方法是,在循环内再加上一个if语句和for循环:
但是,如果数据越复杂,你的代码就越多,一般来讲过于复杂的代码几乎不是什么好东西…….
第二种方法,创建一个函数,将重复代码变成一个函数:
如何创建函数?
def 函数名 ( 参数 ):
函数代码组
因此,我的函数需要得到一个列表,处理列表中的各个项。如果它在第一个列表中发现一个嵌套列表,函数就需要重复,就是说,函数需要反复调用。
这是改良后的代码,在IDLE上测试:
完成!