📅  最后修改于: 2023-12-03 14:46:18.444000             🧑  作者: Mango
在Python中,可以使用for循环和if语句来匹配两个列表。以下是一个示例。
假设我们有两个列表,一个是学生的姓名列表,另一个是他们的成绩列表。
names = ['Alice', 'Bob', 'Charlie', 'David']
scores = [90, 85, 80, 95]
我们可以使用for循环遍历两个列表,并使用if语句来匹配它们。例如,如果我们想查找分数高于85分的学生,我们可以这样做:
for i in range(len(names)):
if scores[i] > 85:
print(names[i] + ' scored ' + str(scores[i]) + ' points')
输出:
Alice scored 90 points
David scored 95 points
在这个例子中,我们使用了一个for循环来遍历学生姓名列表中的每个姓名。我们使用range(len(names))来生成一个与姓名列表相同长度的数字列表。这个数字列表可以用来访问成绩列表中的相应项目。
使用if语句,我们测试成绩是否高于85。如果是,我们打印学生的姓名和他们的分数。
这种方法仅适用于两个列表具有相同长度的情况。如果两个列表长度不同,你可能需要进行其他的处理。
在Python中,你还可以使用列表推导式和zip函数来实现匹配两个列表。以下是一个示例:
high_scores = [name for name, score in zip(names, scores) if score > 85]
print(high_scores)
输出:
['Alice', 'David']
在这个例子中,我们使用zip函数将两个列表结合在一起。zip函数返回一个元组列表,其中每个元组都包含两个列表中相应位置的值。然后,我们使用列表推导式来筛选出得分高于85的学生的姓名。