首页 > 解决方案 > 我想在 kivy 中加入我的 python 项目的多项选择测验

问题描述

我正在构建一个包含许多测验的应用程序。我在 python 文件上设置了第一个测验,我在另一个 python 和 kv 文件上设置了主项目(我使用的是 kivy 和 kivy 语言)。现在我不知道如何将创建的测验放在主项目中的位置。我尝试为测验创建一个类,然后在我希望它出现在我的主项目中的类中继承它,但它没有用

这是我创建的测验:

from Question import Question

question_prompts = [
    "What color is an egg?\n(a) White\n(b) Purple\n(c) Orange\n\n",
    "What comes after b?\n(a) A\n(b) V\n(c) C\n\n",
    "Which of these is a color?\n(a) Teal\n(b) Magneta\n(c) Yellow\n\n"
]

questions = [
    Question(question_prompts[0], "a"),
    Question(question_prompts[1], "c"),
    Question(question_prompts[2], "c"),
]

def run_test(questions):
    score = 0
    for question in questions:
        answer = input(question.prompt)
        if answer == question.answer:
            score += 1
    print("You got " + str(score) + "/" + str(len(questions)) + "correct")


run_test(questions)

这是我希望它在主项目中的类:

class NineteenWindow(Screen):

   pass

这是我为该类拥有的 kv 文件的一部分:

<NineteenWindow>
    name: "this"

我可以在 NineteenWindow 类中添加什么以便能够在那里导入测验?

标签: pythonkivy

解决方案


根据我对您的问题的了解-您想将.py&.kv文件包含到另一个文件中。如果是,那么这就是你如何做到的。

  1. import一个python文件main.py

    从 pythonfilename 导入你想要的类

  2. import一个 kivy 文件main.py

    Builder.load_file('yourkivyfile.kv')

要记住的事情

  1. 你需要import建造者from kivy.lang import Builder

  2. 不要在要导入的文件中创建 main 函数main.py


推荐阅读