python字典中,值可任意更改;但键是唯一的,不支持直接修改。若真的需要修改字典中的键,可通过几种间接方式实现。以下提供三种方法。


文章目录

  • 新建字典:
  • 尝试直接修改:
  • 进行间接修改:
  • 方法一(推荐):dict[新的键] = dict.pop(旧的键)
  • 方法二:结合dict.pop() 和dict.update() 的方法。
  • 方法三:结合del语句


新建字典:

my = {'a':1,'b':2,'c':3}

python 替换字典中的值 python替换字典中的key_键值对

尝试直接修改:

my['z'] = my['a']
print(my)

python 替换字典中的值 python替换字典中的key_赋值_02

可见,产生了一个新的键值对,并未修改原来的键。

进行间接修改:

方法一(推荐):dict[新的键] = dict.pop(旧的键)

将需要修改的key对应的value用dict.pop() 的方法提取出来,并重新赋值给新的key,即dict[新的键] = dict.pop(旧的键)。(字典dict的pop方法是删除某个键及其对应的值,返回的是该键对应的值)

my['x'] = my.pop('b')

python 替换字典中的值 python替换字典中的key_python_03

方法二:结合dict.pop() 和dict.update() 的方法。

my.update({'x':my.pop('b')})

python 替换字典中的值 python替换字典中的key_赋值_04

方法三:结合del语句

结合刚刚试图直接修改的步骤和del语句。先用直接修改的方式将旧键赋值给新的键,再用del语句删除原来的键名。

del my['a']

python 替换字典中的值 python替换字典中的key_键值对_05