如何在 Python 中迭代嵌套列表?
在本文中,我们将了解 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 - 要遍历此列表,请使用 for 循环检查每个项目一次。
步骤 5 - 使用 isinstance() 函数查找给定项目是否为列表。如果是列表,则遍历该内部列表。
示例
nestedList1 =[["Meena", 30, ["Lucknow", "UP"]], ["Arun", 40, ["Rampur", "UP"]], ["Hina", 35, ["Rohini", "Delhi"]],["Aman", 45, ["Govindpuri", "Delhi"]]]
print("Printing the nested array: ")
print("", nestedList1, "\n")
for list1 in nestedList1:
print("\nPrinting the person's record fetched from the nested array: \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 the given list
print(nestedList2)
#the first loop
for s in range(len(nestedList2)) :
#second loop
for t in range(len(nestedList2[s])) :
#third loop
for u in range(len(nestedList2[s][t])) :
print(nestedList2[s][t][u],"\n")
输出
在命令窗口中运行 python 文件 -
打开 cmd 窗口。首先,我们将打印三维列表。然后打印各个项目。

在这篇 Python 文章中,通过三个不同的示例,给出了展示如何迭代嵌套列表的方法。第一种方法使用项目索引值进行迭代,并展示了在使用提取的信息时如何格式化输出。在第二个示例中,使用 isinstance() 函数查找给定项目是否为列表,然后进一步遍历它。最后一个示例使用嵌套的“for”循环迭代三维嵌套列表中的项目。
数据结构
网络
关系型数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP