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

liftword4个月前 (12-19)技术文章65

在本文中,我们将学习如何在 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 字典遍历的8种方法

Python 中的字典是键值对的集合,其中每个键都是唯一的。它们广泛用于各种用途,例如存储配置设置、管理数据或映射数据关系。为了有效地使用字典,需要了解如何循环访问它们1. 使用 For 循环遍历字典...

Python 中的列表推导式详解 python列表讲解

· 在 Python 中,列表推导式是一种简洁而富有表现力的方式,通过以紧凑的语法指定元素和条件来创建数据结构,如列表、字典和集合,通常使用单行代码,而不是使用传统的循环和附加操作。 在 Python...

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

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

Python生成遍历暴力破解密码,实战的效果差强人意了

这个也就是提供一个思路,需求是这样的,我XX的闺蜜有个rar的压缩包,不知道他是从哪里挣来的,说这个对他比较重要,但是有密码打不开,唉,可怜了我的电脑了因为这个是暴力破解,是把所有的密码进行的遍历,也...

Python数据分析实战-依次遍历dataframe行和列(源码和实现效果)

实现功能:Python实现dataframe遍历行和列实现代码:import pandas as pd df = pd.read_csv("G:\数据杂坛\datasets\kidney_d...

某校教务管理系统post分析,Python实现自动查询成绩并发送短信

前言本人是一名大三大学生,考完试不久,由于自己不知道期末考试什么时候出考试成绩,并且每次查询成绩特别麻烦(首先得登录VPN连接学校内网,然后再登录教务管理系统,再进入查询界面,点击查询成绩等,相信各位...