ok jetzt habe ich es verstanden danke. Es war mir nicht ganz klar. Aber wenn ich es richtig verstehe ist die liste mit meiner Class verknüpft und deswegen brauche ich nur eins inportieren.Der Grund warum ich nachgefragt habe ist folgender:
Hier mal der Ganze code:
Code: Alles auswählen
import random
from daten import Frage, fragen_liste
def main():
print("Willkommen bei")
print("Wer wird Gillinonär")
print("Alle Fragen die Final Fantasy 14 betreffen, sind auf den Stand von August 2022")
name = input("Verrate mir deinen Namen: ")
while True:
antwort = input("Ist " + name + " korrekt? Antworte mit Ja/Nein: ").lower()
if antwort == "ja":
print("Dann fangen wir an, " + name + ".")
break
elif antwort == "nein":
name = input("Verrate mir deinen Namen: ")
else:
print("Ungültige Eingabe. Antworte mit Ja/Nein.")
print("Willkommen, " + name + "!")
used_indices = [] # Liste für bereits verwendete Fragen-Indizes
punkte = 0
while len(used_indices) < len(fragen):
index = random.randint(0, len(fragen) - 1)
if index not in used_indices:
used_indices.append(index)
frage_objekt = fragen[index]
print(frage_objekt.text)
answers = [frage_objekt.richtige_antwort] + frage_objekt.falsche_antworten
random.shuffle(answers)
for i, answer in enumerate(answers):
letter = chr(65 + i)
print(f"{letter}: {answer}")
user_antwort = input("Deine Antwort (A/B/C/D): ").upper()
if user_antwort == chr(65 + answers.index(frage_objekt.richtige_antwort)):
print("Richtig!\n")
punkte = +1
else:
print("Falsch!\n")
break
print("Vielen Dank fürs Spielen!")
print("Du hast " + str(punkte) + " fragen Richtig")
if __name__ == "__main__":
main()
Ich weis da sind noch einige sachen drin die ich ändern kann aber in diesen code hatte ich noch den Import befehl, da ich zur besseren Lesbarkeit zumindest für mich und zu lernzwecken die fragen ausgelagert habe.
Code: Alles auswählen
class Frage:
def __init__(self, text, richtige_antwort, falsche_antworten):
self.text = text
self.richtige_antwort = richtige_antwort
self.falsche_antworten = falsche_antworten
fragen = [
Frage("Ca. wieviele Charaktere gibt es in FF14?", "13 Mio", ["20 Mio", "8 Mio"]),
Frage("Welche ist die am häufigsten gespielt männliche Rasse?", "Hyur", ["Miqo'te", "Lalafell"]),
Frage("Welche ist die am häufigsten vertretene Klasse?", "Barde", ["Paladin", "Weißmagier"]),
Frage("Wieviele Datenzentren gibt es aktuell?", "77", ["83", "65"]),
Frage("Wieviele Hochzeiten gab es ca. Ingame (ewiger Bund)?", "400000", ["200,000", "1 Mio"]),
Frage("Wer ist der Schutzgott von Ul'dah?", "Nald'thal", ["Thaliak", "Halone"]),
Frage("Die Miqo'te (Sonnentatzen) haben am Anfang ihres Namens einen Buchstaben, der ihren Stamm repräsentiert. Der Name steht jeweils für ein Tier, wofür steht das M?", "Murmelhörnchen", ["Mull", "Morbol"]),
Frage("Wie viele Ätheryten gibt es im Spiel?", "2155", ["736", "1,498"]),
Frage("Lalafell sind die kleinste Rasse im Spiel. Was ist die geringste Größe, die man wählen kann?", "86.9 cm", ["79,2 cm", "90,8 cm"]),
Frage("Der Gold Saucer stammt ursprünglich aus welchem Teil?", "7", ["9", "11"]),
Frage("Das Kartenspiel Triple Triad stammt aus Teil 8. Wie hieß es dort?", "Balamb Card", ["Stratego Card", "Monster Card"]),
Frage("Wie viele Baurezepte (alle Kategorien) hat derzeit der Gourmet?", "719", ["553", "1012"]),
Frage("Die Revolverklinge stammt ursprünglich aus welchem Teil?", "8", ["7", "10"]),
Frage("Wie viele Dungeons gibt es derzeit?", "86", ["65", "73"])
Die zeile mit dem inport hat nicht vollständig funktioniert deswegen habe ich nachgefragt. aber jetzt habe ich es verstanden. Danke