dimanche 1 janvier 2023

Random data from json file

I create a quiz using json files as categories. I would like to have random categories and random questions. I managed to have random categories already but still can't figure out how to create drawing questions from json file.

I have 4 questions in my json file and for example I would like to draw 2 from them.

while True:
    if len(the_filenames) != 0:
        random_section = random.choice(the_filenames)
        print()
        print("Wylosowano dział:", random_section[:-5])
        with open(r"C:\Users\Tymek\PycharmProjects\pythonProject1\quiz!\ematyka\\" + random_section) as file:
            questions = json.load(file)
            the_filenames.remove(random_section)
            i = []
            for i in range(0, len(questions)):
                show_questions(questions[i])
                print("Twój aktualny wynik to:", points, "/", total_points)
    if len(the_filenames) == 0:
{"questions":  [
                {
                  "pytanie":"Ktore dzialanie wykonamy jako pierwsze?",
                  "a": "dzielenie",
                  "b": "odejmowanie",
                  "c": "dodawanie",
                  "d": "potęgowanie",
                  "prawidlowa_odpowiedz":"d"
                },
                {
                  "pytanie":"Podaj wynik dzialania 18-9/3*2",
                  "a": 12,
                  "b": 6,
                  "c": 16,
                  "d": 24,
                  "prawidlowa_odpowiedz":"a"
                },
                {
                  "pytanie":"Ktora z wymienionych nie jest funkcja trygonometryczna?",
                  "a": "tangens",
                  "b": "sangens",
                  "c": "cosinus",
                  "d": "cotangens",
                  "prawidlowa_odpowiedz":"b"
                },
                {
                  "pytanie":"Suma katow w trojkącie wynosi?",
                  "a": "160 stopni",
                  "b": "360 stopni",
                  "c": "90 stopni",
                  "d": "180 stopni",
                  "prawidlowa_odpowiedz":"d"
                }
              ]}



Aucun commentaire:

Enregistrer un commentaire