python-10-如何在一个for语句中迭代多个可迭代对象?

来源:互联网 发布:徐峥陶虹 知乎 编辑:程序博客网 时间:2024/06/10 02:20

这里写图片描述

from random import randintchinese = [randint(60,100) for _ in range(40)]math = [randint(60,100) for _ in range(40)]english = [randint(60,100) for _ in range(40)]for i in range(len(math)):    print(chinese[i] + math[i] + english[i])

但是不是所有的可迭代对象都支持检索操作,比如生成器
解决方案:
这里写图片描述
zip可以将多个迭代对象组合在一起,比如

zip([1,2,3,4],('a','b','c','d'),...)每一个项是一个元组

所以:
并行:

total = []for c,m,e in zip(chinese,math,english):    total.append(c + m + e)    把总分添加到列表中

串行:
这里写图片描述

count = 0for s in chain(chinese,math,english):    if s>90:        count += 1print(count)
0 0