#python
Вопрос:
У меня есть словарь
d= {1:[2],2:[3],3:[4]}
я хочу поменять местами только определенный ключ с его значениями.
поэтому, если я захочу поменять местами первый ключ, то словарь будет
d= {2:[1,3],3:[4]}
как я могу этого достичь?
Я пытался
d.итерационные элементы()
но он меняет местами все ключи словаря.
Заранее спасибо. и это не домашнее задание.
Комментарии:
1. Что делать, если значение, которое вы меняете, представляет собой список с более чем одним элементом — или пустой список?
2. Спасибо, что указали на это . Исправлено, что значение, которое мы меняем местами, представляет собой список только с одним элементом. и она не может быть пустой.
Ответ №1:
Это один из подходов dict.pop
и dict.setdefault
Экс:
d= {1:[2],2:[3],3:[4]}
key_to_swap = 1
for value in d.pop(key_to_swap):
d.setdefault(value, []).append(key_to_swap)
print(d)