Добавление более одного значения в словарь при циклическом просмотре строки

Все еще очень плохо знаком с Python 3 и столкнулся с проблемой ... Я пытаюсь создать функцию, которая возвращает словарь с ключами, являющимися длиной каждого слова, и значениями, являющимися словами в строке.

Например, если моя строка: «Собаки быстро бегут вперед в парк», мой словарь должен вернуться{2: ['to'] 3: ['The', 'run', 'the'], 4: ['dogs', 'park], 7: ['quickly', 'forward']}

Проблема в том, что когда я перебираю элементы, он добавляет только одно слово в строку.

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"))

Код возвращается

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

Может ли кто-нибудь указать мне правильное направление? Возможно, не дает мне ответ свободно, но что мне нужно смотреть дальше с точки зрения добавления пропущенных слов в список. Я думал, что добавление их в список сделает это, но это не так.

Спасибо!

Ответы на вопрос(7)

Ваш ответ на вопрос