Добавление более одного значения в словарь при циклическом просмотре строки
Все еще очень плохо знаком с 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']}
Может ли кто-нибудь указать мне правильное направление? Возможно, не дает мне ответ свободно, но что мне нужно смотреть дальше с точки зрения добавления пропущенных слов в список. Я думал, что добавление их в список сделает это, но это не так.
Спасибо!