遍历 Python 中的列表项是指迭代列表中的每个元素。我们这样做是为了对每个项执行所需的操作。这些操作包括列表修改、条件操作、字符串处理、数据分析等。
Python 提供了多种方法来遍历列表项,其中最常见的是 for
循环。我们也可以使用 while
循环来遍历列表项,尽管这需要显式地控制循环变量,即索引。
使用 For 循环遍历列表项
Python 中的 for
循环用于迭代序列(如列表、元组、字典、字符串或范围)或其他任何可迭代对象。它允许你为序列中的每一项重复执行一段代码。
在一个 for
循环中,你可以使用变量来访问序列中的每一项,这样就可以基于该项的值执行操作或逻辑。我们可以通过 for
循环遍历列表中的每一项。
语法
以下是使用 for
循环遍历列表中项目的 Python 基本语法:
for item in list:
示例
在下面的例子中,我们使用 for
循环来迭代列表 "lst" 中的每个元素,并在同一行后面跟着一个空格打印出每个元素:
lst = [25, 12, 10, -21, 10, 100]
for num in lst:
print(num, end=' ')
输出
以上代码的输出如下:
25 12 10 -21 10 100
使用 While 循环遍历列表项
Python 中的 while
循环用于只要指定的条件评估为 "True" 就重复执行一段代码。
我们可以通过初始化一个索引变量,然后使用该索引来遍历列表,并在达到列表末尾之前逐次递增索引来使用 while
循环遍历列表项。
在一个循环中,索引变量用于跟踪序列(如列表或数组)中的当前位置或索引。它通常在循环之前初始化,并在循环内部更新以便迭代整个序列。
语法
以下是使用 while
循环遍历列表中项目的 Python 基本语法:
while 条件:
示例
在下面的例子中,我们使用 while
循环来遍历列表 "my_list" 中的每一项。我们使用索引变量 "index" 来依次访问每一项,并在每次迭代后递增它以移动到下一项:
my_list = [1, 2, 3, 4, 5]
index = 0
while index < len(my_list):
print(my_list[index])
index += 1
输出
以上代码的输出如下:
1
2
3
4
5
使用索引遍历列表项
索引是一个数值,表示序列(如列表)中元素的位置,从第一个元素的 0 开始。
我们可以通过迭代与列表长度对应的索引范围并在循环中使用索引来访问每个元素来遍历列表项。
示例
这个例子初始化了一个包含整数的列表 "lst",并创建了一个与列表长度相对应的索引范围。然后,它遍历范围中的每个索引,并打印列表 "lst" 在该索引处的值:
lst = [25, 12, 10, -21, 10, 100]
indices = range(len(lst))
for i in indices:
print("lst[{}]: ".format(i), lst[i])
输出
我们得到的输出如下:
lst[0]: 25
lst[1]: 12
lst[2]: 10
lst[3]: -21
lst[4]: 10
lst[5]: 100
使用列表推导式迭代
Python 中的列表推导式是一种通过将表达式应用于可迭代对象的每个元素来简洁地创建列表的方法。这些表达式可以是算术运算、函数调用、条件表达式等。
我们可以通过指定表达式和可迭代对象(如列表、元组、字典、字符串或范围)来使用列表推导式迭代。以下是语法:
[expression for item in iterable]
这将应用表达式到可迭代对象中的每一项,并创建一个结果列表。
示例
在这个例子中,我们使用列表推导式来迭代一个数字列表中的每个数字,对每个数字求平方,并将平方的结果存储在新的列表 "squared_numbers" 中:
numbers = [1, 2, 3, 4, 5]
squared_numbers = [num ** 2 for num in numbers]
print(squared_numbers)
输出
我们得到的输出如下:
[1, 4, 9, 16, 25]
使用 enumerate() 函数迭代
Python 中的 enumerate()
函数用于在迭代可迭代对象的同时还提供每个元素的索引。
我们可以通过将其应用于可迭代对象来使用 enumerate()
函数迭代。以下是语法:
for index, item in enumerate(iterable):
这将在迭代期间提供可迭代对象中每个元素的索引和项。
示例
在下面的例子中,我们使用 enumerate()
函数来遍历列表 "fruits" 并检索每个水果及其对应的索引:
fruits = ["apple", "banana", "cherry"]
for index, fruit in enumerate(fruits):
print(index, fruit)
输出
我们得到的输出如下:
0 apple
1 banana
2 cherry