【问题标题】:Python: Creating a multiple choice quizPython:创建多项选择测验
【发布时间】:2017-10-09 15:02:26
【问题描述】:

我正在尝试用 python 编写一个程序,它首先要求用户选择一项运动(足球、网球、高尔夫或羽毛球),然后选择简单、中等或困难。然后程序应该询问用户 5 个关于这项运动的问题,如果用户选择了“简单”,则有 4 个选项,如果用户选择了“中等”则有 6 个选项,如果用户选择了“困难”则有 8 个选项。

谁能帮我开始?

【问题讨论】:

  • 这和java有什么关系?
  • 不是,但是很多java程序员也可以用python编程。
  • 这不是用 Java 标记这篇文章的理由
  • 好吧,对不起。
  • 另外,您需要展示您为解决此问题所做的尝试。目前,您要求人们从头开始为您编写一些代码,这不是本网站的工作方式。

标签: python function loops


【解决方案1】:

有一个名为 tkinter 的 Python 库,您可以使用它。选择过程的基本设计如下:

from tkinter import *

class App:
    def __init__(self, root):
        self.root = root
        self.x = IntVar()
        self.y = IntVar()
        self.frame = Frame(root)
        self.frame.pack()
        self.sport = [("football", 0), ("tennis", 1), ("golf", 2), ("badminton", 3)]
        self.diff = [("easy", 0), ("medium", 1), ("hard", 2)]
        for i, c in self.sport:
            Radiobutton(self.frame, text=i, variable=self.x, value=c, indicatoron=0).pack(anchor="w", fill="both", expand=True)
        for i, c in self.diff:
            Radiobutton(self.frame, text=i, variable=self.y, value=c, indicatoron=0).pack(anchor="w", fill="both", expand=True)
        Button(self.frame, text="Ok", command=self.start).pack(anchor="w", fill="both", expand=True)
    def start(self):
        print("questions: "+self.sport[self.x.get()][0]+", "+"difficulty: "+self.diff[self.y.get()][0])


root = Tk()
App(root)
root.mainloop()

您需要从那里开始循环并循环选择最有可能包含在某种形式的嵌套迭代中的问题。

你可以有类似的东西:

[[(fb question 1, [list of answers]), ...], [(tennis question 1, [list of answers]), ...], ...]

附带说明,Stack Overflow 不是免费的编程服务,也不是为您创建家庭作业的资源。如果您在开发周期的某个阶段遇到困难,我们非常乐意帮助您解决问题,但不会为您编写程序。

【讨论】:

  • 感谢您的帮助。我不需要图形用户界面,我只需要一个简单的程序 :)
  • @AliceWilliams 你不知道吗?
  • 发这么短的问题是我的错,抱歉!我以后会考虑这个,不过,这是个好主意。
  • 没关系,我只是在“First Post”队列中遇到了您的问题。该队列旨在向您展示可能需要一些帮助才能进入社区的用户。如果您有任何需要,请随时与我联系。
  • 非常感谢,我会尽快与您联系,详细说明我正在寻找的内容。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-07-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-08-31
  • 2023-03-24
相关资源
最近更新 更多