处理嵌套列表

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了处理嵌套列表相关的知识,希望对你有一定的参考价值。

如何显示嵌套列表的每一项:

1.在列表中查找列表

每次处理列表中的一项时,都要查看这一项本身是不是另一个列表。

如果这一项确实是一个列表,那么在处理列表中的下一项之前,先要处理这个列表。

Python确定何时做什么可以采用我们熟悉的if...else...模式:

if  某个条件满足 :

    ”true“组

else:

    ”false“组

不过,要检查什么条件呢?

题目是要求用一种方法确定当前的列表项是不是一个列表,因此,可以用isinstance()  BIF,它允许检查某个特定标识符是否包含某个特定类型的数据。

简单了解它是如何工作:

技术分享图片

 

2.使用一个if语句和isinstance() BIF处理嵌套列表:

技术分享图片

我们可以看到,打印到屏幕上的最后一行还是一个嵌套列表,那么,如何处理多层嵌套列表呢?

一种我们可以想到的方法是,在循环内再加上一个if语句和for循环:

技术分享图片

但是,如果数据越复杂,你的代码就越多,一般来讲过于复杂的代码几乎不是什么好东西.......

第二种方法,创建一个函数,将重复代码变成一个函数:

如何创建函数?

def    函数名    (  参数  ):

        函数代码组

因此,我的函数需要得到一个列表,处理列表中的各个项。如果它在第一个列表中发现一个嵌套列表,函数就需要重复,就是说,函数需要反复调用。

技术分享图片

这是改良后的代码,在IDLE上测试:

技术分享图片

完成!

 

以上是关于处理嵌套列表的主要内容,如果未能解决你的问题,请参考以下文章

python嵌套列表组合成一个新的嵌套列表

需要处理嵌套列表时如何将递归转换为迭代?

如何使用嵌套元组或 HList 处理具有 Slick 的 > 22 列表?

如何在 VTL 中处理 AWS APIG 映射模板中的嵌套列表

python_嵌套列表变成普通列表

python_嵌套列表变成普通列表