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

寻求Python测验App开发帮助:实现题目逐题展示功能

Python测验App逐题展示实现方案

你可以通过遍历题目列表、逐题渲染并接收用户输入的方式实现需求,以下是完整可运行的代码:

questions = [
    {
        "num": 1,
        "question": "What does XML stand for?",
        "answer": "eXtensible Markup Language",
        "options": [
            "eXtensible Markup Language",
            "eXecutable Multiple Language",
            "eXTra Multi-Program Language",
            "eXamine Multiple Language"
        ]
    },
    {
        "num": 2,
        "question": "Who invented C# Language?",
        "answer": "Anders Hejlsberg",
        "options": [
            "Bjarne Stroustrup",
            "Anders Hejlsberg",
            "Charles Babbage",
            "James Gosling"
        ]
    },
]

def run_quiz():
    for q in questions:
        # 展示题目
        print(f"\nQuestion {q['num']}: {q['question']}")
        print("Options:")
        # 带编号显示选项
        for idx, option in enumerate(q['options'], 1):
            print(f"{idx}. {option}")
        
        # 获取用户输入
        user_input = input("Enter your answer (number or full text): ").strip()
        
        # 处理输入逻辑,支持编号或文本
        if user_input.isdigit():
            selected_idx = int(user_input) - 1
            if 0 <= selected_idx < len(q['options']):
                user_answer = q['options'][selected_idx]
            else:
                print("Invalid option number, moving to next question.")
                continue
        else:
            user_answer = user_input
        
        # 答案校验与反馈
        if user_answer == q['answer']:
            print("Correct!")
        else:
            print(f"Wrong answer. The correct one is: {q['answer']}")

if __name__ == "__main__":
    run_quiz()

核心逻辑说明

  • 用for循环遍历题目列表,自动按顺序处理每一道题
  • 把选项按编号列出,用户既可以输入选项序号,也能直接输入答案文本
  • 加入了输入合法性判断,避免无效输入导致程序出错
  • 可选的答案校验功能,实时给用户反馈对错

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.07 07:50:18