Mehr als einen Wert zum Wörterbuch hinzufügen, wenn Zeichenfolge durchlaufen wird

Noch super neu in Python 3 und habe ein Problem festgestellt ... Ich versuche, eine Funktion zu erstellen, die ein Wörterbuch mit den Schlüsseln für die Länge jedes Wortes und den Werten für die Wörter in der Zeichenfolge zurückgibt.

enn meine Zeichenfolge beispielsweise "Die Hunde rennen schnell in den Park" lautet, sollte mein Wörterbuch "@" zurückgebe{2: ['to'] 3: ['The', 'run', 'the'], 4: ['dogs', 'park], 7: ['quickly', 'forward']}

Problem ist, dass beim Durchlaufen der Elemente nur eines der Wörter in der Zeichenfolge angehängt wird.

def word_len_dict(my_string):
    dictionary = {}
    input_list = my_string.split(" ")
    unique_list = []
    for item in input_list:
        if item.lower() not in unique_list:
            unique_list.append(item.lower())
    for word in unique_list:
        dictionary[len(word)] = []
        dictionary[len(word)].append(word)
    return (dictionary)

print (word_len_dict("The dogs run quickly forward to the park"))

Der Code gibt @ zurü

{2: ['to'], 3: ['run'], 4: ['park'], 7: ['forward']}

Kann mich jemand in die richtige Richtung weisen? Vielleicht gebe ich die Antwort nicht frei, aber worauf muss ich als nächstes achten, um die fehlenden Wörter in die Liste aufzunehmen. Ich dachte, dass es das schaffen würde, sie an die Liste anzuhängen, aber das ist es nicht.

Vielen Dank

Antworten auf die Frage(14)

Ihre Antwort auf die Frage