Я новичок в Python и пытаюсь узнать, возможен ли код:
chs = ch.split(' ')
d = { mot:ch.count(mot) for mot in chs if (mot not in d)}
Эти инструкции направлены на создание словаря, основываясь на моих знаниях в других языках программирования, я понимаю, чтоПодсчет будет выполняться каждый раз, когда цикл повторяется, поэтому я пытаюсь оптимизировать, а не подсчитывать, если слово уже подсчитано.
Теперь проблема в том, что я получаю эту ошибку
NameError: free variable 'd' referenced before assignment in enclosing scope
, что я полностью понимаю, переменная d
еще не установлена.
Итак, я ищу, чтобы знать, есть ли какая-то временная переменная, которая имеет значенияперед корпусом.