@JohnDoe116

Возможно ли создать генератор словаря заполняя его введёнными произвольными значениями?

Нужно создать генератор словаря который "на ходу" через input() заполнят его значениями и ключами с цифрами в порядке возрастания, выглядеть это должно ровно также как и list comprehension:
что-то типа подобного
d = {len(i):i for i in input().lower().split()}
То есть, вводится строка с пробелами, далее каждое значение разделенное пробелом записывается как значение словаря, и его ключу присваивается порядковый номер от 1 и далее
со списками разобрался, хотелось бы постичь сокращенный синтаксис ввода произвольного словаря.
  • Вопрос задан
  • 117 просмотров
Решения вопроса 1
@Drill
d = {k:v for k, v in enumerate(input().lower().split(), 1)}


In [2]: "a aa abC aa ac abc bcd"
{1: 'a', 2: 'aa', 3: 'abc', 4: 'aa', 5: 'ac', 6: 'abc', 7: 'bcd'}
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
adugin
@adugin Куратор тега Python
Проще и компактнее так:
dict(enumerate(input().lower().split(), 1))
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы