打分类测评

依然用KOLB实现

这次希望实现的功能是,每个问题有四个选项,用户需要给每个选项排序,最符合自己到最不符合自己。

实现思路:

1. 可以按如下顺序,先遍历显示四个选项,先选最符合自己的,赋值为4,然后最不符合自己的,赋值为1, 剩下两个选项中选择更符合自己的,赋值为3,else赋值为2。选项赋值完成。

2. 直接和用户说明,让用户自己赋值,check是否有重复value

第二思路实现:

questions部分

questions = [
    {"问题": "问题1:...", "选项": ["选项1", "选项2", "选项3", "选项4"]},
    {"问题": "问题2:...", "选项": ["选项5", "选项6", "选项7", "选项8"]},
    {"问题": "问题3:...", "选项": ["选项9", "选项10", "选项11", "选项12"]},
    {"问题": "问题4:...", "选项": ["选项13", "选项14", "选项15", "选项16"]},
    {"问题": "问题5:...", "选项": ["选项17", "选项18", "选项19", "选项20"]},
]
answers = {}
for question in questions:
    print("以下4个选项,请选择最符合你的一项打4分,比较像你的打3分,不太像你的打2分,最不像你的打1分")
    print(question["问题"], question["选项"])
    options = question["选项"]
    option_order = sorted(options)  # 对选项进行排序
    question_answers = {}
    for option in option_order:
        while True:
            try:
                order = option_order.index(option) + 1  # 计算选项在排序后的位置
                answer = int(input(f"请对选项 {option} 进行打分({order}/4):"))
                if answer < 1 or answer > 4:
                    raise ValueError
                if answer in question_answers.values():
                    raise ValueError("打分不能重复")
                question_answers[option] = answer
                break
            except ValueError:
                print("请输入有效的选项打分!")
    answers[question["问题"]] = question_answers

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值