Переименование ключей словаря
Как изменить ключ в словаре Python?
Процедура возвращает словарь.
Все в порядке со словарем, за исключением того, что пару ключей нужно переименовать. Этот код ниже копирует запись словаря (ключ = значение) в новую запись с нужным ключом, а затем удаляет старую запись. Есть ли более питоновский способ, возможно, без дублирования значения?
my_dict = some_library.some_method(scan)
my_dict['qVec'] = my_dict['Q']
my_dict['rVec'] = my_dict['R']
del my_dict['Q'], my_dict['R']
return my_dict
Ответы
Ответ 1
Клавиши dict
неизменяемы. Это означает, что они не могут быть изменены. Вы можете больше узнать из docs
Словарь индексируется ключами, который может быть любым неизменным типом
Ниже приведено обходное решение с использованием dict.pop
>>> d = {1:'a',2:'b'}
>>> d[3] = d.pop(1)
>>> d
{2: 'b', 3: 'a'}