Я пытаюсь найти объединение множеств множеств. В частности, я хочу объединение списка узлов для каждого ключа в словаре графиков networkx
, называемых periodic_gs
. Я хотел бы использовать функцию reduce
, поскольку разумно брать объединение всех periodic_gs[x].nodes()
, где x
является ключом periodic_gs
.
Вот моя попытка:
reduce(lambda x,y: set(periodic_gs[x].nodes()).union(set(periodic_gs[y].nodes())), periodic_gs.keys(), {})
Для меня это говорит о соединении узлов по каждому графику в словаре. По какой-то причине python говорит мне: TypeError: unhashable type: 'dict'
Я не вижу этого TypeError
, потому что periodic_gs.keys()
- это список ключей (они являются строками, но я не вижу, как это имеет значение), а при замене в аргументы функции лямбда будут работать.
Что вызывает ошибку типа и как ее исправить?