如果答案是随机的,如何跟踪其原始答案的答案?

时间:2020-03-05 09:14:19

标签: python

首先,由于我是Python新手,所以我事先道歉,所以我的代码行可能很乱!

因此,这就是我要实现的目标,我试图创建一个测验,将每个试验的问题随机化,并且每次也将答案随机化。下面的代码是我编码的一部分,我有点执着于如何处理“随机答案”部分。用户可以通过键入“ 1”,“ 2”或“ 3”来选择答案,但是由于答案始终是随机的,我该如何将用户选择的答案与其原始答案匹配起来?

marks = 0
questions = ['Q1', 'Q2', 'Q3']
combination = ['Q1', 'Option 1 Q1'], ['Q2', 'Option 2 Q2'], ['Q3', 'Option 1 Q3']
answers = [['Option 1 Q1'], ['Option 2 Q1'], ['Option 3 Q1']], [['Option 1 Q2'], ['Option 2 Q2'], ['Option 3 Q2']], [['Option 1 Q3'], ['Option 2 Q3'], ['Option 3 Q3']]
selected_answers = []
random.shuffle(questions)

def shuffling():
    random.shuffle(answers[0])
    random.shuffle(answers[1])
    random.shuffle(answers[2])

question = 0
while question < 8:
    if questions[0] == 'Q1':
        shuffling()
        print(combination[0][1])
        print(answers[0][0], answers[0][1], answers[0][2])
        chosen = input('Enter 1 for the first answer, 2 for the second answer and 3 for the third one: ')
        selected_answers.append(chosen)
        del questions[0]

1 个答案:

答案 0 :(得分:1)

有各种显而易见的解决方案:

每次生成结果后,您至少应记录与原始位置的比较,这将有助于您进行判断。

或者您也可以考虑使用确定的随机种子来打桌子。

您真的应该了解字典。将数据存储为键值对具有优势,并且在这方面更有效。