一文掌握在 Python 中遍历列表的 8 种基本方法

liftword7个月前 (12-19)技术文章90

在本文中,我们将学习如何在 Python 中遍历列表。您可以根据需要或过程效率选择最佳方法。

1.使用 for 循环遍历列表

使用 for 循环在列表中进行迭代是实现遍历列表的最简单和最基本的方法。

「语法:」

for variableName in listName:

「示例:」

list1 = [1, 3, 5, 7, 9] 
for i in list1: 
    print(i) 
    
#输出: 
1
3
5
7
9

以上示例使用一个简单的 for 循环,遍历列表的所有元素并逐个输出元素。

2.使用 while 循环遍历列表

在 python 中遍历列表的第二种方法是使用 while 循环。在 while 循环方式中,我们将使用与 for 循环类似的方法。

「语法:」

while condition:
  Statement

「示例:」

list1 = [1, 3, 5, 7, 9] 
length = len(list1) 
i = 0
while i < length: 
    print(list1[i]) 
    i += 1

# 输出:
1
3
5
7
9

在上面的示例程序中,我们必须找到列表的长度作为循环条件。while 循环仅在条件为真时才循环。我们还声明并初始化了一个变量 “i”,初始值为“0”。

3.使用 enumerate() 方法遍历列表

enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。

「语法:」

enumerate(sequence, [start=0])

「参数:」

sequence -- 一个支持迭代对象。 start -- 下标起始位置。

「示例:」

list1 = [1, 3, 5, 7, 9] 
for i, j in enumerate(list1): 
    print (i,":",j)

#输出:
0 : 1
1 : 3
2 : 5
3 : 7
4 : 9

4.使用列表推导式遍历列表

「语法:」

[expression for item in list]

「参数:」

expression:返回值的有效表达式。

item:可迭代对象的值。

list:列表、集合、序列、生成器或任何其他可迭代对象。

「示例:」

list1 = [1, 3, 5, 7, 9] 
[print(i) for i in list1] 

# 输出:
1
3
5
7
9

5.使用 for 循环和 range() 在遍历列表

range() 可以与 for 循环结合使用,以遍历和迭代列表。该函数返回一系列数字,从 0(默认值)开始,默认情况下递增 1,并在指定数字之前停止。

「语法:」

range(start, stop, step)

「示例:」

list1 = [1, 3, 5, 7, 9] 
length = len(list1) 
for x in range(length): 
    print(list1[x]) 
    
# 输出:
1
3
5
7
9

6.使用 map() 和 lambda 遍历列表

「lambda 语法:」

lambda arguments : expression

「map() 语法:」

map(function, iterables)

「示例:」

list1 = [1, 3, 5, 7, 9] 
list2 = list(map(lambda y:y, list1))
print(list2)  

#输出:
[1, 3, 5, 7, 9]

在上面的例子中,我们使用了 lambda 和 map() 函数的组合来迭代列表。map() 函数将列表元素映射到 lambda。lambda y:y 接受每个元素并返回该元素。

7.使用 zip() 遍历列表

如果你想同时遍历两个列表,你可以使用 zip() 函数。zip() 函数的作用是创建一个迭代器,该迭代器将聚合来自两个或多个可迭代对象的元素。

「语法:」

zip(iterator1, iterator2, iterator3 ...)

「示例:」

list1 = [1, 3, 5, 7, 9] 
list2 = ['a', 'b', 'c', 'd', 'e']
for a, b in zip(list1, list2): 
    print (a, b) 
    
#输出:
1 a
3 b
5 c
7 d
9 e

8.使用迭代器 iter() 和 next() 遍历列表

iter() 创建迭代器。

next() 访问迭代器。

「示例:」

list1 = [1, 3, 5, 7, 9] 
iter1 = iter(list1)
while True:
    try:
        element = next(iter1)
        print(element)
    except StopIteration:
        break
        
# 输出:
1
3
5
7
9

next() 在访问迭代器时,如果访问到最后一个元素,再继续访问下一个元素会触发 StopIteration 异常。

?

文章创作不易,如果您喜欢这篇文章,请关注、点赞并分享给朋友。如有意见和建议,请在评论中反馈!

?

相关文章

Python 中从字典中提取所有值到列表

有时候,在使用 Python 字典时,只关心获取字典的值而不关心字典的键。可以使用多种方法从字典中获取所有的值。使用 keys() 方法Python 字典(Dictionary) keys() 方法以...

Python编程小技巧,enumerate与内函数zip()遍历

使用enumerate()遍历序列enumerate()函数可以在循环中同时获取元素的索引和值,这比使用普通的for循环更为高效和简洁。示例:python# 使用普通的for循环 lst = [...

Python 循环详解:从基础到进阶实例

在Python中,循环结构用于反复执行某段代码,直到某个条件不再满足。Python 提供了两种基本的循环结构:for 循环和 while 循环。下面是Python循环的几个实例:1. for循环for...