Вы можете использовать понимание списка в соответствии с решением @ U9-Forward.
Альтернативное функциональное решение возможно с operator.mul
и zip
:
from collections import Counter
from operator import mul
c = Counter({5: 3, 6: 2, 8: 1})
res = list(map(mul, *zip(*c.items())))
# [15, 12, 8]
Если вам действительно нужен set
, оберните map
с set
вместо list
. Разница в том, что set
- неупорядоченная коллекция уникальных предметов, а list
- упорядоченная коллекция без ограничений на дубликаты.