Ich kann nicht herausfinden, wie alle Elemente eines Wörterbuchs gedruckt werden! Ich bekomme immer wieder Fehler, dass es nicht definiert ist.alle Elemente eines Wörterbuchs drucken? Python
Die Datei Ich benutze (mood.txt):
happy, Jennifer Clause
happy, Jake Foster
sad, Jonathan Bower
mad, Penny
excited, Logan
awkward, Mason Tyme
mein Code:
def theFile():
moodFile = open("mood.txt")
theMood = moodFile.readlines()
moodFile.close()
return(theMood)
def makeTheDict(myFile):
moodDict = {}
for lines in myFile:
(mood, name) = lines.split(",")
moodDict[mood] = name.strip()
return(moodDict)
def printMood(mood, moodDict):
if mood in moodDict:
print("The people who are", mood, ":", moodDict[mood])
def allMoods(moodDict):
#code I am having trouble with
for moods in moodDict:
print(mood, moodDict[moods])
def main():
moodFile = theFile()
moodDict = makeTheDict(moodFile)
findMood = input("Which mood do you want to choose?: ")
printMood(findMood, moodDict)
allMoods(moodDict)
ich alle Stimmungen innerhalb der Funktion allMoods()
zu drucken versuche. Immer wenn ich Stimmung aus print(mood, moodDict[moods])
entferne, druckt es alle Namen gut aus, aber wenn ich die Stimmung einfüge sagt es, dass es nicht definiert ist.
Ich versuchte printMood(mood, moodDict)
innerhalb allMoods()
zu rufen, aber ich konnte das auch nicht zum Arbeiten bekommen!
Wie drucke ich alle Stimmungen mit ihrem Namen aus? Kann jemand helfen! Vielen Dank!
Sie sagten 'für Stimmungen in moodDict', also ist' Stimmung' nicht definiert. Es sollte "für Stimmung in moodDict" sein. – zondo
Können Sie uns das Ergebnis zeigen, das Sie erwarten? – ettanany