Помогите разобраться:
есть словарь
fls_gen = {'05:00PM': 'Freeport',
'05:55PM': 'Rock Sound',
'07:00PM': 'West End',
'09:35AM': 'Freeport',
'09:55AM': 'West End',
'10:45AM': 'Treasure Cay',
'11:45AM': 'Rock Sound',
'12:00PM': 'Treasure Cay'}
так же есть цикл с генератором:
when = {}
for dest in set(fls_gen.values()):
when[dest]=[key for key, value in fls_gen.items() if value == dest]
позволяющий трансформировать словарь fls_gen в словарь:
{'Freeport': ['09:35AM', '05:00PM'],
'Rock Sound': ['11:45AM', '05:55PM'],
'Treasure Cay': ['10:45AM', '12:00PM'],
'West End': ['09:55AM', '07:00PM']}
Вопрос в следующем - если генератор [key for key, value in fls_gen.items() if value == dest] представить в виде цикла for
результат получается не тот, что при использовании генератора:
when = {}
for dest in set(fls_gen.values()):
for key, value in fls_gen.items():
if value == dest:
when[dest] = [key]
вернет:
{'Freeport': ['05:00PM'],
'Rock Sound': ['05:55PM'],
'Treasure Cay': ['12:00PM'],
'West End': ['07:00PM']}
В чем ошибка при использовании цикла в цикле вместо генератора ?