Python 如何从文本文件中计算多项选择题的分数
我试图在包含5个问题和4个可能答案的文本文件中计算正确答案和错误答案的数量。到目前为止,我能够一次一个地循环回答每个问题,用户能够给出答案,但是我似乎不知道如何计算用户给出的答案是对还是错 我知道如何在其他更简单的代码中使用累加器值,但是当问题来自文本文件时,我不知道如何格式化它Python 如何从文本文件中计算多项选择题的分数,python,python-3.x,Python,Python 3.x,我试图在包含5个问题和4个可能答案的文本文件中计算正确答案和错误答案的数量。到目前为止,我能够一次一个地循环回答每个问题,用户能够给出答案,但是我似乎不知道如何计算用户给出的答案是对还是错 我知道如何在其他更简单的代码中使用累加器值,但是当问题来自文本文件时,我不知道如何格式化它 math_file = open("math.txt", 'r') question_prompts = math_file.readlines() count = 0 correct_answers = {"c":[
math_file = open("math.txt", 'r')
question_prompts = math_file.readlines()
count = 0
correct_answers = {"c":[0], "b":[1], "a":[2], "a":[3], "d":[4]}
startline = 0
for num in range(5):
for i in range(startline, startline + 5):
print(question_prompts[i])
answer = input('Answer: ')
startline = startline + 5
if answer == correct_answers:
count += 1
此代码一次正确打印一个文本文件问题,例如,第一个问题是:
什么是4x6
(a) 四,
(b) 十二,
(c) 二十四
(d) 240
然后程序给出
回答:(用户可以在这里输入)
我试着用字典把问题的答案按出现的顺序排列,但我不确定这是否有效。非常感谢您的建议 - 您试图使用的字典应该是相反的,字典中的值不应该在列表中李>
是错误的,因为if answer==correct\u answers
“a”!={0:c',1:b,2:a',3:a',4:d}
math_file = open("math.txt", 'r')
question_prompts = math_file.readlines()
count = 0
correct_answers = {0:"c", 1:"b", 2:"a", 3:"a", 4:"d"} # the line to change
startline = 0
for num in range(5):
for i in range(startline, startline + 5):
print(question_prompts[i])
answer = input('Answer: ')
startline = startline + 5
if answer == correct_answers[num]: # the line to change
count += 1