本文最后更新于 2024-06-17,文章内容可能已经过时。

1. 什么是遍历?

将容器内的元素依次取出,并处理,称之为遍历操作

2. 如何遍历列表的元素?

可以使用while或for循环

列表的遍历 - while循环

语法:

#定义变量初始值
index = 0
#定义while循环
while index < len(列表):	#len(列表)作用为统计列表元素内容
元素 = 列表[index]
对元素进行处理的语句
#循环条件控制
index += 1

示例代码

#定义列表
num = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
#定义空列表存放偶数
even = []
#定义初始值
index = 0
#while循环遍历
while index < len(num):
    element = num[index]
    #if判断偶数
    if element % 2 == 0:
    #将偶数添加到新的列表
        even.append(element)
    index += 1
print(f"通过while循环,从列表:{num}中取出偶数,组成新的列表:{even}")

#结果:通过while循环,从列表:[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]中取出偶数,组成新的列表:[2, 4, 6, 8, 10]

列表的遍历 - for循环

语法:

for 临时变量 in 数据容器:
	对临时变量进行处理

表示,从容器内,依次取出元素并赋值到临时变量上。

在每一次的循环中,我们可以对临时变量(元素)进行处理

示例代码

# 定义列表
num = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
# 定义空列表存放偶数
even = []
#for循环遍历
for element in num:
	#if判断偶数
	if element % 2 == 0:
	#将偶数添加到新的列表
		even.append(element)
print(f"通过for循环,从列表:{num}中取出偶数,组成新的列表:{even}")

#结果:通过for循环,从列表:[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]中取出偶数,组成新的列表:[2, 4, 6, 8, 10]

while循环和for循环的对比

while循环和for循环,都是循环语句,但细节不同:

在循环控制上:

while循环可以自定循环条件,并自行控制

for循环不可以自定循环条件,只可以一个个从容器内取出数据

在无限循环上:

while循环可以通过条件控制做到无限循环

for循环理论上不可以,因为被遍历的容器容量不是无限

在使用场景上:

while循环适用于任何想要循环的场景

for循环适用于,遍历数据容器的场景或简单的固定次数循环场景

练习案例:取出列表内的偶数

定义一个列表,内容是:[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

遍历列表,取出列表内的偶数,并存入一个新的列表对象中

使用while循环和for循环各操作一次

提示:

通过if判断来确认偶数

通过列表的append方法,来增加元素

参考答案

#定义while循环函数
def list_while_func():
    #定义列表
    num = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    #定义空列表存放偶数
    even = []
    #定义初始值
    index = 0
    #while循环遍历
    while index < len(num):
        element = num[index]
        #if判断偶数
        if element % 2 == 0:
            #将偶数添加到新的列表
            even.append(element)
        index += 1
    print(f"通过while循环,从列表:{num}中取出偶数,组成新的列表:{even}")

#调用函数
list_while_func()


#定义for循环函数
def list_for_func():
    # 定义列表
    num = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    # 定义空列表存放偶数
    even = []
    #for循环遍历
    for element in num:
        #if判断偶数
        if element % 2 == 0:
            #将偶数添加到新的列表
            even.append(element)
    print(f"通过for循环,从列表:{num}中取出偶数,组成新的列表:{even}")

#调用函数
list_for_func()