Другая пара вложенных опций.
Сначала создайте новый dict с ключами, соответствующими условию:
[ item for values in { k: v for k, v in slov.items() if len(k) == 3 }.values() for item in values ]
Или создайте список сзначения, ключи которых соответствуют условию:
[ item for values in [ v for k, v in slov.items() if len(k) == 3 ] for item in values ]
Эта часть [ v for k, v in slov.items() if len(k) == 3 ]
возвращает результат в виде вложенного списка [[1.0, 2.0], [6.0]]
, поэтому необходимо сгладить его вложение в понимании списка.
Оба возвращаются #=> [1.0, 2.0, 6.0]