You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何编写函数按位置对比两个列表元素并输出结果?

实现题目与答案的逐位对比函数

很容易就能实现这个需求,我们可以利用Python的enumerate函数来同时获取题目序号和对应的答案,然后逐一对用户提交的答案和正确答案进行对比,输出对应的对错提示。

完整实现代码

def check_answers(question, solution):
    # 用enumerate遍历,start=1让题目序号从1开始计数
    for q_num, (user_ans, correct_ans) in enumerate(zip(question, solution), start=1):
        if user_ans == correct_ans:
            print(f'Q {q_num}: {user_ans}, correct answer')
        else:
            print(f'Q {q_num}: {user_ans}, wrong answer is {correct_ans}')

# 示例用法
question = ['a', 'b', 'c', 'd']
solution = ['c', 'b', 'c', 'a']
check_answers(question, solution)

代码说明

  • zip(question, solution)会把两个列表中对应位置的元素配对,比如第一个配对是('a', 'c'),第二个是('b', 'b'),以此类推,确保我们能逐位对比。
  • enumerate(..., start=1)用来生成从1开始的题目序号,完全符合日常做题的计数习惯。
  • 每次循环中判断用户答案和正确答案是否相等,分别输出正确或错误的提示信息,格式完全匹配你给出的示例要求。

运行结果

运行上面的代码后,会输出:

Q 1: a, wrong answer is c
Q 2: b, correct answer
Q 3: c, correct answer
Q 4: d, wrong answer is a

内容的提问来源于stack exchange,提问作者chloe ong

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.14 08:48:41