Почему это работает и нет ошибки?

Подскажите почему в коде text_dict[i]+=1 нет ошибки и он работает правильно (добавляет к значению (dict.values) +1 за каждый повторный символ), ведь по сути это text_dict[i] = text_dict[i] + 1 и получается, что мы к str прибавляем int. Однако, если пишу text_dict.update({i : i+1}), то тогда выдает ошибку. В чем разница?

text = "Как уже неоднократно упомянуто, действия..."

# Заполняем ключи в словаре символами текста, а значения нулями

text_dict={}    
for i in text:       
    text_dict[i] = 0

#Достаем количество символов из текста, заполняя словарь

for i in text:         
    text_dict[i]+=1

Почему нет ошибки так и не понял ведь мы прибавляем к строке интеджер, это разве не равносильно text_dict.update({i : i+1})?


Ответы (0 шт):