【发布时间】:2017-11-22 05:20:09
【问题描述】:
我正在尝试创建一个测验,其中我有来自外部文本文件的问题和答案以导入 Python,以便用户可以输入选择。
问题是我的代码只在测验的结束打印一次"Correct",并且没有在回答每个问题后说明用户的问题是正确还是不正确。
第一列 (detail[0]) 是问题所在,正确答案在第四列 (detail[4]))
谢谢
这是文本文件中的内容:
What is 1+1,1,2,2
What is 2+2,4,2,4
下面是源代码:
def quiz():
file = open("quiz.txt","r")
right = False
for line in file:
detail = line.split(",")
print(detail[0])
select = input("Select 1 or 2: ")
if select == detail[3]:
right = True
break
if right == True:
print("Correct")
else:
print("Incorrect")
【问题讨论】:
-
好吧,当给出第一个正确答案时,您
break退出了for循环,那么您期望会发生什么? -
另外你只在
for循环完成后打印“正确”或“不正确”,所以只针对最后一个问题。 -
我有一个类似的代码,它具有中断功能,所以我尝试使用它,但显然这是一个问题,所以我已经删除了它。您有什么建议可以纠正这个问题吗?
标签: python python-3.x