Помогите с python - Общение Python мододелов

Вопрос Помогите с python

Регистрация
20 Авг 2013
Сообщения
78
Репутация
30
Спасибо
0
Монет
0
x={}

for _ in range(int(input())):

i=input().split(": ")

x[i[0]]=i[1]

Как можно это запихнуть в генератор (проблема в том, что мы дважды к i обращаемся)
 
Регистрация
22 Дек 2012
Сообщения
72
Репутация
0
Спасибо
0
Монет
0
Всё намного проще: x = dict(input().split(': ')[:2] for _ in range(int(input())))
Или даже так: x = dict(input().split(': ') for _ in range(int(input()))) , если input().split(': ') гарантировано возвращает 2 значения.
 
Регистрация
22 Ноя 2013
Сообщения
77
Репутация
0
Спасибо
0
Монет
0
Так: x = {i.split(": ")[0]: i.split(": ")[1] for i in [input() for _ in range(int(input()))]}. Здесь входные данные сначала собираются в список, а затем обрабатываются в словаре.
 
Регистрация
30 Июл 2013
Сообщения
82
Репутация
0
Спасибо
0
Монет
0
Ты смысла в Пайтон не ищи
Лучше иди ты подрощенные
Сунь вынь XXX век
 
Сверху Снизу