如何在 Python 中迭代列表

17 Mar 2025 | 4 分钟阅读

列表是 Python 中最常用的数据结构之一。我们在许多不同的应用中使用列表,从解决简单问题到复杂问题。在 Python 中,列表取代了数组,并具有以下优点:

  1. 动态大小
  2. 可以在同一个列表中存储不同数据类型的项

我们可以像访问有序数据一样简单地访问列表中的数据;与集合不同,集合中的数据是无序的。要访问数据,我们可以使用几种方法来遍历列表中的每个元素。本教程将通过示例介绍所有方法。

1. 循环

  • 使用 while 循环

输出

How to Iterate through a List in Python

理解

我们创建了一个包含几个元素的列表。最初,count = 0。我们在 while 循环中打印'count'索引处的元素并递增 count。当 count 达到列表长度时,循环将终止,并且所有元素都已被访问。

机制

count = 0list1 [0]3
count = 1list1 [1]5
count = 2list1 [2]7
count = 3list1 [3]2
count = 4list1 [4]4
count = 5 = len (list1)--
  • 使用 for 循环

输出

How to Iterate through a List in Python

理解

使用 for-in,我们访问了列表中的所有 i,即元素。

  • 使用 for 和 range

输出

How to Iterate through a List in Python

理解

range 函数帮助 'for' 循环从 0 迭代到给定列表的长度。

机制

range 给出 - 0list1 [0]3
range 给出 - 1list1 [1]5
range 给出 - 2list1 [2]7
range 给出 - 3list1 [3]2
range 给出 - 4list1 [4]4
  • range 函数不给出指定的最后一个元素 - len (list1) = 5 没有给出。

2. 使用列表推导式

这是在 Python 中迭代列表的简单且推荐的方法。

代码

输出

How to Iterate through a List in Python

理解

我们可以在列表推导式中使用 for 循环。我们使用了上面示例中使用的相同 for 循环,但将其放在一个单行列表内。这样,我们可以缩短代码长度,而且列表推导式是一种非常精妙且高效的方式,可以将循环放入列表。

3. 使用 enumerate()

enumerate 函数将给定列表转换为元组列表。关于此函数的另一个重要事实是,它会计算迭代次数。这是一个 Python 内置函数。

代码

输出

How to Iterate through a List in Python

4. 使用 lambda 函数和 map()

这些是匿名函数。Python 中有一个 map() 函数,它可以接受一个函数作为参数,并用可迭代对象中的每个元素调用该函数,然后返回一个包含可迭代对象中所有元素的新列表。

代码

输出

How to Iterate through a List in Python

理解

lambda num: num 作为输入与列表一起传递给 map 函数。该函数将接受列表中的每个元素,接受它,然后返回它。map() 函数将列表元素一个接一个地传递给 lambda 函数以返回元素。

如果我们要迭代多维列表怎么办?

Python 中有一个内置模块,用于对多维列表执行操作。

1. 获取 numpy

通过在搜索中打开 cmd 并输入命令来检查 Python 和 pip 是否已安装

Python -version

Pip --version

如果 Python 和 PIP 都存在于我们的系统中,那么现在是安装我们的库的时候了。

2. 从开始菜单打开 cmd

3. 输入命令

pip install numpy

How to Iterate through a List in Python

所有库包、数据和子包将一个接一个地安装。

代码

输出

How to Iterate through a List in Python

理解

我们导入了 numpy 模块。使用 arrange 方法,我们创建了一个包含 9 个元素的数组。我们通过使用 reshape 将列表重塑为 3*3(行*列)来访问列表。使用 nditer 函数,我们打印了列表中的每个元素。