如何在Python中遍历嵌套列表?
本文将了解Python中的嵌套列表的概念以及如何遍历嵌套列表。有时,任务是要遍历列表中的每个元素或查找列表中的元素或使用列表中给定的信息。在所有这些情况下,都必须遍历列表。列表可以由单个类型的元素或多种类型的元素组成。给出了三个不同的示例,表示遍历列表的不同方式。
嵌套列表示例-
一个带有不同项类型的嵌套列表。
nestedList1 =[["Meena", 30, ["Lucknow", "UP"]], ["Arun", 40, ["Rampur", "UP"]], ["Hina", 35, ["Rohini", "Delhi"]],["Aman", 45, ["Govindpuri", "Delhi"]]]
一个三维列表 -
nestedList2 = [
[
['a', 'b'],
['c', 'd']
],[
['e', 'f'],
['g', 'h']
]
]
示例1:使用元素的索引值在Python中遍历嵌套列表
算法
-
步骤1 - 首先指定要使用的嵌套列表。嵌套列表是具有列表作为元素的列表。
-
步骤2 - 使用一个显示不同类型的元素的列表,例如:在此示例中使用以下列表-
nestedList1 =[["Meena", 30, ["Lucknow", "UP"]], ["Arun", 40, ["Rampur", "UP"]], ["Hina", 35, ["Rohini", "Delhi"]],["Aman", 45, ["Govindpuri", "Delhi"]]]
-
步骤3 - 首先打印指定的嵌套列表。
-
步骤4 - 要遍历该列表,请使用索引值,例如item[0]或item[2][0]
-
步骤5 - 根据需要不同的方式使用提取的信息。
示例
nestedList1 =[["Meena", 30, ["Lucknow", "UP"]], ["Arun", 40, ["Rampur", "UP"]], ["Hina", 35, ["Rohini", "Delhi"]],["Aman", 45, ["Govindpuri", "Delhi"]]]
print("Printing the nested array: ")
print("\n", nestedList1, "\n")
print("Printing the information fetched from the nested array: \n")
for item in nestedList1:
print(item[0], "is", item[1],"years old", "and lives in", item[2][0], ",",item[2][1])
输出
在命令窗口中运行Python文件。
打开cmd窗口。首先,我们将打印所给列表。然后打印各个项目。
示例2:使用Isinstance()遍历Python中的嵌套列表来检查项目是否为列表。
算法
-
步骤1 - 首先指定要使用的嵌套列表。嵌套列表是具有列表作为元素的列表。
-
步骤2 - 使用一个显示不同类型的元素的列表,例如:在此示例中使用以下列表-
nestedList1 =[["Meena", 30, ["Lucknow", "UP"]], ["Arun", 40, ["Rampur", "UP"]], ["Hina", 35, ["Rohini", "Delhi"]],["Aman", 45, ["Govindpuri", "Delhi"]]]
-
步骤3 - 首先打印指定的嵌套列表。
-
步骤4 - 要遍历该列表,请使用一个循环来检查每个项目一次。
-
步骤5 - 使用isinstance()函数查找给定项是否为列表。如果它是一个列表,则遍历该内部列表。
示例
未提供这个示例的例子。
nestedList1 = [["Meena", 30, ["Lucknow", "UP"]], ["Arun", 40, ["Rampur", "UP"]], ["Hina", 35, ["Rohini", "Delhi"]],["Aman", 45, ["Govindpuri", "Delhi"]]]
print("打印嵌套数组:")
print("", nestedList1, "\n")
for list1 in nestedList1:
print("\n从嵌套数组中获取的人员记录:\n")
for l in list1:
isitalist=isinstance(l, list)
if (isitalist==True):
for x in range(0, len(l)):
print(l[x])
else:
print(l)
输出
在命令窗口运行Python文件-
打开cmd窗口。首先,我们将打印给定的列表。然后打印个别项。
示例3:通过使用嵌套的“for”循环在Python中迭代嵌套列表
算法
-
步骤1 −首先指定要使用的嵌套列表。嵌套列表是具有列表作为元素的列表。
-
步骤2 −使用类似于三维数组的列表,例如−
在此示例中使用以下列表−
nestedList2 = [
[
['a', 'b'],
['c', 'd']
],[
['e', 'f'],
['g', 'h']
]
]
-
步骤3 −首先打印指定的嵌套列表。
-
步骤4 −现在使用for循环遍历第一级列表。将第二个“for”循环添加到第一个循环中以遍历第二级列表。即在第一个列表内的列表。
-
步骤5 −在第一个循环中添加下一个循环以遍历第二级列表。即在第一个列表内的列表。
-
步骤6 −现在在其中使用另一个for循环来迭代最内部嵌套列表的元素。在不同行中打印所有元素。
示例
nestedList2 = [ [ ['a', 'b'], ['c', 'd'] ], [ ['e', 'f'], ['g', 'h']]]
#打印给定的列表
print(nestedList2)
#第一个循环
for s in range(len(nestedList2)) :
#第二个循环
for t in range(len(nestedList2[s])) :
#第三个循环
for u in range(len(nestedList2[s][t])) :
print(nestedList2[s][t][u],"\n")
输出
在命令窗口运行python文件-
打开cmd窗口。首先,我们将打印三维列表。然后打印个别项。
在这篇Python文章中,通过三个不同的示例,给出了迭代嵌套列表的方法。第一种方法使用项目索引值进行迭代,并展示如何在获取信息的同时格式化输出。在第二个示例中,使用isinstance()函数查找给定项是否为列表,然后进一步迭代。最后一个示例使用嵌套的“for”循环迭代三维嵌套列表中的项。