как развернуть сокращённую запись комманд на Python
есть вот такой код на питоне
dict = defaultdict(set)
idx = 'one'
val = 'первый'
dict[idx].add(val)
idx = 'two'
val = 'второй'
dict[idx].add(val)
idx = 'three'
val = 'третий'
dict[idx].add(val)
val = 'четвёртый'
dict[idx].add(val)
idx = 'four'
val = 'пятый'
dict[idx].add(val)
idx = 'five'
val = 'шестой'
dict[idx].add(val)
val = 'седьмой'
dict[idx].add(val)
idx = 'six'
val = 'восьмой'
dict[idx].add(val)
n = sum((len(val) > 1) for idx, val in dict.items())
подскажите как разложить последнюю строку, что бы получился отдельно цикл в котором что то по условию суммируется ни как не могу найти объяснения как такое можно сделать
Ответы (1 шт):
Автор решения: n1tr0xs
→ Ссылка
- Инициализируем нашу переменную
n = 0
- Переписываем наш итератор:
for idx, val in dict.items():
- Переписываем тело цикла:
n += len(val)>1
- Соединяем
n = 0
for idx, val in dict.items():
n += len(val)>1
Дополнение:
- Вместо
idx, val in dict.items()тут следует написатьval in dict.values() - Не стоит называть переменные зарезервированными словами (
dict,list,set, ...)