案例:
某班学生期末考试成绩,语文、数学、英语分别储存在3个列表中,同时迭代三个列表,计算每个学生的总分(并行)
import random
chinese = [random.randint(60,100) for _ in range(50)] #假设班级有50名学生,每个学生随机生成60-100之间的分数,生成三科的成绩列表
mathematics = [random.randint(60,100) for _ in range(50)]
english = [random.randint(60,100) for _ in range(50)]
一般for循环语句:
for i in range(len(chinese)): #因为三科分数列表长度一样,只要选择其中一科列表进行迭代
print(chinese[i] + mathematics[i] + english[i]) #每个学生的三科成绩进行相加获取总分
使用zip并行迭代:
total = []
for c,m,e in zip(chinese,mathematics,english): #利用zip进行序列解包
total.append(c+m+e) #每个学生的三科成绩进行相加获取总分并加进列表中
print(total)
案例:
某年级有4个班,某次考试每班英语成绩分别存储在4个列表中,依次迭代每个列表,统计全学年成绩高于90分人数(串行)
import random
from itertools import chain #使用标准库中的itertools.chain,它能将多个可迭代对象连接
e1 = [random.randint(60,100) for _ in range(50)] #假设班级有50名学生,每个学生随机生

本文通过案例展示了如何在Python中使用for循环并行和串行迭代多个可迭代对象,如列表。首先,通过zip函数并行迭代三个列表计算学生的总分;其次,利用itertools.chain串联四个列表,统计全学年成绩高于90分的人数。
最低0.47元/天 解锁文章
748

被折叠的 条评论
为什么被折叠?



