Datenbank / Bibliothek auswerten

Code-Stücke können hier veröffentlicht werden.
Antworten
Nacer5
User
Beiträge: 4
Registriert: Sonntag 20. Dezember 2020, 11:46

Hey, ich komme hier nicht weiter. Konnte im Netz nichts finden, vielleicht suche ich auch falsch.

Ich möchte entweder eine Liste oder eine Bibliothek mit Antworten anlegen. Dann soll ein User nach diesen Antworten gefragt werden. Die vom User genannten Antworten sollen mit den Listen oder Bibliotheken verglichen werden und die Liste mit den meisten Übereinstimmungen soll dann ausgegeben werden.

Oder anders, wie wenn jemand nach einem roten, Pullover in Größe S sucht. So dass dann die ganze Datenbank danach durchsucht wird.

Ich habe es zwar nun gelöst, aber über Schleifen wie ich es mache ist es sehr umständlich und mit mehr Einträgen auch nicht händelbar.

Wie kann ich sowas lösen? Nach welchen Buzz Words sollte ich googeln?

Freue mich über Rückmeldung. Bin noch Anfänger und bin nicht so fit.

Beispiel Listen:

Code: Alles auswählen

schulterstand =  ("bauch", "innerer_koerper", "oberer_koerper", "ruecken")
fisch =     ("ruecken", "brustkorb")
vorwaertsbeuge = ("innerer_koerper", "ruecken")

asanas = [schulterstand, fisch, vorwaertsbeuge]
#Vorstellung
print("Hallo, ich bin YoBo dein persönlicher Yoga Assistent.")

print("Wie heißt du? ")
user_name = input()
print("Hi " + user_name + ".")

kennen_lernen = ["Freut mich dich kennen zu lernen!", ":-)", "Schön dich kennen zu lernen! :-)"]
print(random.choice(kennen_lernen))

#Frage Wohlbefinden
happy = False
fragen = ["Wie geht es dir? ", "Wie gehts? "]
print(random.choice(fragen))

wohlbefinden = ["gut", "super","klasse", "großartig", "fantastisch"]
gefuehl = input()
gefuehl = gefuehl.lower()

for wort in wohlbefinden:
    if wort in gefuehl:
        happy = True   
        if "nicht" in gefuehl:
            happy = False

if happy == True:
    print("Super, das freut mich!")
else:
    print("Oh, das klingt nicht gut. Wollen wir ein anderes mal weiter machen? (ja/nein)")
    schlechtes_gefuehl = input()
    schlechtes_gefuehl = schlechtes_gefuehl.lower()
    if "ja" in schlechtes_gefuehl:
        print("Ok, bis zum nächsten mal.")
        #Hier soll das Prgramm enden
        quit()
    else:
        print("Super, weiter gehts.")
  
print("Möchtes du das ich für dich eine passende Yoga Übung heraussuche?")
print("Dafür würde ich dir ein paar Fragen stellen.")
antwort = input("Ok? (ja/nein)\n")

if "nein" in antwort:
    print("Schade, vielleicht ein anderes mal.")
    print("Hab noch einen schönen Tag. Hoffentlich bis demnächst!")
    #Hier soll das Programm dann enden.
    quit()
else:
    print("Ok super, dann beginne ich mit der ersten Frage.")
#Anamnese Rücken
frage_ruecken = input("Möchtest du etwas für deinen Rücken tun? ja/nein\n")
frage_ruecken = frage_ruecken.lower()

antwort_ruecken = ()
if "ja" in frage_ruecken:
    antwort_ruecken = ("ruecken")
    print("Ok, Rücken")
else:
    print("Gut.")
#Anamnese Bauch
frage_bauch = input("Möchtest du was für deinen Bauch tun? ja/nein\n")
frage_bauch = frage_bauch.lower()

antwort_bauch = ()
if "ja" in frage_bauch:
    antwort_bauch = ("bauch")
    print("ok")
else:
    print("Gut, kein Bauch")
#Anamnese innerer Körper
frage_innerer_koerper = input("Wie wäre es deinen Stoffwechsel und deine Verdauung in Gang zu bringen. Möchtest du es in deine Übung mit einbauen? ja/nein?n")
frage_innerer_koerper = frage_innerer_koerper.lower()

antwort_innerer_koerper =()
if "ja" in frage_innerer_koerper:
    antwort_innerer_koerper = ("innerer_koerper")
    print("Das ist super, dein Körper wird es dir danken. :-)")
else:
    print("Ok, dann lassen wir es weg.")
#Auswertung
if antwort_bauch in schulterstand and antwort_ruecken in schulterstand:
    print("Dann ist der Schulterstand genau das Richtige. Viel Spaß!")
elif antwort_ruecken in fisch:
        print("Dann empfehle ich dir den Fisch. Danke fürs mitmachen und viel Spaß.")
elif antwort_innerer_koerper in vorwaertsbeuge and antwort_bauch in vorwaertsbeuge:
    print("Dann empfehle ich dir die Vorwärtsbeuge.")
else:
    print("Sorry, leider habe ich keinen Vorschlag für dich. Aber danke fürs mitmachen.")
Beispiel Bibliothek:

Code: Alles auswählen

schulterstand =  {"name":"Schulterstand", "bauch":True, "innerer_koerper":True, "oberer_koerper":True, "ruecken":True, "brustkorb":False}
fisch =                 {"name":"Fisch", "bauch":False, "innerer_koerper":False, "oberer_koerper":False, "ruecken":True, "brustkorb":False}
vorwaertsbeuge = {"name":"Vorwärtsbeuge","bauch":False, "innerer_koerper":True, "oberer_koerper":False, "ruecken":True, "brustkorb":False}
frage_ruecken = input("Möchtest du etwas für deinen Rücken tun? ja/nein\n")
frage_ruecken = frage_ruecken.lower()

antwort_ruecken = ()
if "ja" in frage_ruecken:
    antwort_ruecken = ("ruecken")
    print("Ok, Rücken")
else:
    print("Gut.")

#Anamnese Bauch
frage_bauch = input("Möchtest du was für deinen Bauch tun? ja/nein\n")
frage_bauch = frage_bauch.lower()

antwort_bauch = ()
if "ja" in frage_bauch:
    antwort_bauch = ("bauch")
    print("ok")
else:
    print("Gut, kein Bauch")

#Anamnese innerer Körper
frage_innerer_koerper = input("Wie wäre es deinen Stoffwechsel und deine Verdauung in Gang zu bringen. Möchtest du es in deine Übung mit einbauen? ja/nein?\n")
frage_innerer_koerper = frage_innerer_koerper.lower()

antwort_innerer_koerper =()
if "ja" in frage_innerer_koerper:
    antwort_innerer_koerper = ("innerer_koerper")
    print("Das ist super, dein Körper wird es dir danken. :-)")
else:
    print("Ok, dann lassen wir es weg.")
#Auswertung
if antwort_bauch in schulterstand and antwort_ruecken in schulterstand:
    print("Dann ist der Schulterstand genau das Richtige. Viel Spaß!")
elif antwort_ruecken in fisch:
        print("Dann empfehle ich dir den Fisch. Danke fürs mitmachen und viel Spaß.")
elif antwort_innerer_koerper in vorwaertsbeuge and antwort_bauch in vorwaertsbeuge:
    print("Dann empfehle ich dir die Vorwärtsbeuge.")
else:
    print("Sorry, leider habe ich keinen Vorschlag für dich. Aber danke fürs mitmachen.")
Antworten