Возможный дубликат:
Python обратное/обратное отображение
Сменить ключи для уникальных значений в словаре в Python
Привет, я хочу понять, как изменить и сравнить значения словаря: например:
если у меня есть один словарь с ключом: формат значения, подобный этому
dicta = [1:2, 9:8, 4:6, 3:2, 0:7, 1:34, 9:90, 1:8, 67:43, 54:23]
Как мне изменить его так, что значения dicta выше становятся ключами и ключами становятся такими значениями:
dictb = [2:1, 8:9, 6:4, 2:3, 7:0, 34:1, 90:9, 8:1, 43:67, 23:54]
Я использую помощь python 2.5 pls
dictb = dict ( (v,k) for k, v in dicta.items() )
map(reversed,... )
Преобразовать список пар (ключ, значение) в словарь: dict(... )
>>> d = {'a': 1, 'b': 2}
>>> dict(map(reversed, d.items()))
{1: 'a', 2: 'b'}
Синтаксис словарей следующий:
dicta = {1:2, 9:8}
Это сделает преобразование:
dictb = {}
for k in dicta:
dictb[dicta[k]] = k
Попробуй это:
dicatb = {}
for x,k in dicta.iteritems():
dictab[k] = x
TypeError: unhashable type: 'dict'
при запуске этой строки? Мое изречение называетсяG.node
и исходит изnetworkx
пакета.dicta
- это словарь Python или вложенная структура данных, содержащая его. При построенииdictb
вы пытаетесь использовать неисчерпаемую структуру данных в качестве ключа, который не разрешен в Python.