【2.3.2】python中字典删除元素

一、方法一 pop(key[,default])

d = {'a':1,'b':2,'c':3}
# 删除key值为'a'的元素,并赋值给变量e1
e1 = d.pop('a')
print(e1)

# 如果key不存在,则可以设置返回值
e2 = d.pop('m','404')
print(e2)

# 如果key不存在,不设置返回值就报错
e3 = d.pop('m')

运行结果:

1
404

KeyErrorTraceback (most recent call last)
<ipython-input-88-36af1e589823> in <module>()
     10 
     11 # 如果key不存在,不设置返回值就报错
---> 12 e3 = d.pop('m')

KeyError: 'm'

二、 方法二 del[d[key]]

d = {'a':1,'b':2,'c':3}
# 删除给定key的元素
del d['a']
print(d)

# 删除不存在的元素
del d['m']

执行结果如下所示:

{'c': 3, 'b': 2}

KeyErrorTraceback (most recent call last)
<ipython-input-90-4c66f182094e> in <module>()
      5 
      6 # 删除不存在的元素
----> 7 del d['m']

KeyError: 'm'

三、随机删除 popitem()

字典popitem()方法作用是:随机返回并删除字典中的一对键和值。

d = {'a':1,'b':2,'c':3}
# 第一次运行
d.popitem()
print(d)


# 第二次运行
d.popitem()
print(d)

# 第三次运行
d.popitem()
print(d)

运行结果如下:

{'c': 3, 'b': 2}
{'b': 2}
{}

四、clear

一次性删除所有字典元素

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

参考资料

药企,独角兽,苏州。团队长期招人,感兴趣的都可以发邮件聊聊:tiehan@sina.cn
个人公众号,比较懒,很少更新,可以在上面提问题,如果回复不及时,可发邮件给我: tiehan@sina.cn