【问题标题】:Creating a quiz and summoning questions and answers from extrernal file从外部文件创建测验并召唤问题和答案
【发布时间】:2017-12-20 17:59:58
【问题描述】:

我有一个登录系统,学生可以在其中参加不同难度的测验。我需要做的是从外部 .txt 文件加载测验的问题和答案。有人可以快速帮助我,因为我需要尽快完成这项工作。编码是否也很简单并且可以在 python 3.4 上使用,因为我对 python 不是很好

【问题讨论】:

  • 这听起来是一个很好的学习机会。
  • 是的 - 我们不会为你写它(即使我们倾向于这样描述也太模糊了)。如果您有具体问题,我们会尽力提供帮助。到目前为止,您尝试过什么?
  • 你能帮我写一下吗?简而言之,我需要的是一个 python 3.4 程序(idk,如果它不同,但我说这个版本,因为我看到人们在其他版本上使用不带括号的 print),它将从外部文件中召唤问题,并且问题的答案也在一个外部文件。我需要代码来检查问题是否正确。我只是不确定如何编写代码来调用特定的行并检查答案是否正确。
  • @H.M 很抱歉,我们不会在这里编写您的完整代码,这与 Stack Overflow 无关。您可以获得帮助,但您必须展示您尝试过的内容以及遇到问题的地方,以便我们可以帮助解决特定的编程问题。请看How do I ask and answer homework questions?

标签: python login


【解决方案1】:

这是我对代码的尝试:

def easyMathsQuiz():
score=0
emquiz=open("easymathsquiz.txt","r")
questionNumber=0
for questionNumber,line in enumerate(emquiz):
    print (line)
    ans=input("Your answer is: ")
    if ans == "1":
        score=score+1
        questionNumber=questionNumber+1
    elif ans=="2":
        questionNumber=questionNumber+1
    elif ans !="1" or ans !="2":
        print("You have entered an invalid character")
        easyMathsQuiz()
    break
for questionNumber,line in enumerate(emquiz):
    print(line)
    if ans == "2":
        score=score+1
        questionNumber=questionNumber+1
    elif ans=="1":
        questionNumber=questionNumber+1
    elif ans !="1" or ans !="2":
        print("You have entered an invalid character")
        easyMathsQuiz()

easyMathsQuiz() 打印(分数)

这是 .txt 文件中的内容:

什么是2+2-1? 1)3 2)4

什么是 10+10? 1)30 2)20

什么是 3*9? 1)27 2)36

什么是 100/5? 1)25 2)20

什么是 30-17? 1)23 2)13

我的问题是: 每个行号基本上代表问题号。我要打印第一行,但我只是不确定如何打印下一行,我需要系统允许用户输入,当然它需要检查他们的答案是否正确。而且我也完全不知道如何编写代码以在他们输入无效字符时转到问题的开头,而不是让整个事情重新开始 顺便说一句,我似乎无法让代码在这里正确缩进,我的程序上的所有内容都正确缩进

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-10-06
    • 2019-07-23
    • 1970-01-01
    • 2012-12-02
    • 2014-02-04
    • 1970-01-01
    • 1970-01-01
    • 2021-12-17
    相关资源
    最近更新 更多