Найти - Пользователи
Полная версия: Смена местами значений и ключей в словаре
Начало » Python для новичков » Смена местами значений и ключей в словаре
1
Aspergo
f={'food':'apple','book':'Gulliver','season':'spring','drink':'Coca-Cola','animal':'lion'}
for x,y in f.items():
    del f[x]
    f[y]=x
print f,len(f) 

Этот код действует.
А если изменить список:
 f={16:3,12:2,18:4,3:0,4:1}
Он возвращает список с меньшей длиной. Удаляет один из ключей. Почему так происходит?
vrabey
потому что не может быть двух одинаковых ключей
в частности ключу 3 присваивается новое значение - 16
f={16:3,12:2,18:4,3:0,4:1}
можно создать новый словарь
f = {value:key for key, value in f.items()}
print f, len(f)
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB