Python字典删除键值对和元素的四种方法(小结)

目录
  • 1.del删除字典本身
  • 2.pop()删除字典键值对
  •  3.popitem()删除字典键值对
  • 4.clear()删除字典键值对:清空字典中的所有内容,但是不删除字典本身,del删除字典本身

在删除每个字典的时候有些方法和删除其他拥有独立内存的数据使用的方法是一样的,比如del,直接清空内存,clear()是值清除变量值。字典的删除我们从字典对象本身和字典中的键值对两个方面出发,来学习一下。

1.del删除字典本身

del就是从内存级别删除字典本身,让这个字典对象彻底消失。同时也可以删除字典中某个键对应的值,下面我们来演示一下

dict4 = {'name': 'Tom', 'age': 18}
del dict4['name']  # 删除字典,如果键不存在,返回错误
print(dict4)
del dict4  # 删除整个字典
print(dict4)

返回结果:

{'age': 18}

NameError: name 'dict4' is not defined

从结果可以看出来,删除键值对之后,字典中指示缺少一对元素,而删除字典之后,错误提示就变成了变量名没有定义了,说明程序在内存中已经找不到这个字典了。

2.pop()删除字典键值对

dict4 = {'name': 'Tom', 'age': 18}
dict4.pop('age')  # 删除字典中对应的键值对,如果键不存在,返回错误
print(dict4)
res = dict4.pop('age222', '默认返回值')  # 设置默认返回值
print(res, dict4)

{'name': 'Tom'}
默认返回值 {'name': 'Tom'}

 3.popitem()删除字典键值对

popitem()删除字典键值对,删除按照最后一组键值对,返回值为被删除键值对组成的元祖。

dict4 = {'name': 'Tom', 'age': 18}
res = dict4.popitem()
print(dict4, res)

{'name': 'Tom'} ('age', 18)

4.clear()删除字典键值对:清空字典中的所有内容,但是不删除字典本身,del删除字典本身

dict4 = {'name': 'Tom', 'age': 18}
dict4.clear()
print(dict4)

返回:{}

python中的dict(字典):

1. 字典是另一种可变容器模型,每个键值对用冒号 (:) 分割,每个键值对之间用逗号 (,) 分割,整个字典由花括号 {}包围 ;

2. 字典中的键一般是唯一的,如果重复则后面的一个键值对会覆盖前面的,不过字典的值不需要唯一;

3. 值可以取任意数据类型,但键必须是不可变类型,例如字符串,数字或元组,但不能是列表因为列表可变。

到此这篇关于Python字典删除键值对和元素的四种方法(小结)的文章就介绍到这了,更多相关Python字典删除元素内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • python 列表、字典和集合的添加和删除操作

    在python中,元组不可变,只能查询不能修改,列表.字典和集合的基本操作,各不相同,下面就来比较一下它们的添加和删除操作吧. 添加 一.列表 1."+"号 #两个数组相加,生成一个大数组 a = [1, 2, 3] b = [4, 5, 6] c = a + b print(c) #输出结果:[1, 2, 3, 4, 5, 6] 2.extend方法 #只接受列表参数并将参数的每个元素都添加到原有的列表中 a = [1, 2, 3] b = [4, 5, 6] a.extend(b)

  • 完美解决python遍历删除字典里值为空的元素报错问题

    exam = { 'math': '95', 'eng': '96', 'chn': '90', 'phy': '', 'chem': '' } 使用下列遍历的方法删除: 1. for e in exam: 2. if exam[e] == '': 3. del exam[e] 结果出现下列错误,怎么解决: Traceback (most recent call last): File "Untitled.py", line 3, in <module> for e in

  • Python字典添加,删除,查询等相关操作方法详解

    一.创建增加修改 1.实现代码 #创建 stu_info = { "xiedi":28, "liuhailin":27,"daiqiao":30,"hanwenhai":25,"chenqun":38} print(stu_info) #增加 stu_info["luoahong"]=32 print(stu_info) #修改 stu_info["xiedi"]=2

  • python根据字典的键来删除元素的方法

    python根据字典的键来删除元素的方法: 可以利用pop()方法来进行删除. pop()方法可以删除字典定键key及对应的值,并返回被删除的值. 具体使用方法如:[site.pop('name')]. Python 字典 pop() 方法删除字典给定键 key 及对应的值,返回值为被删除的值.key 值必须给出. 否则,返回 default 值. 语法: pop(key[,default]) 参数: key: 要删除的键值 default: 如果没有 key,返回 default 举例: #!

  • Python简单遍历字典及删除元素的方法

    本文实例讲述了Python简单遍历字典及删除元素的方法.分享给大家供大家参考,具体如下: 这种方式是一定有问题的: d = {'a':1, 'b':2, 'c':3} for key in d: d.pop(key) 会报这个错误:RuntimeError: dictionary changed size during iteration 这种方式Python2可行,Python3还是报上面这个错误. d = {'a':1, 'b':2, 'c':3} for key in d.keys():

  • 对Python 字典元素进行删除的方法

    1. Python字典的clear()方法(删除字典内所有元素) #!/usr/bin/python # -*- coding: UTF-8 -*- dict = {'name': '我的博客地址', 'alexa': 10000, 'url': 'http://blog.csdn.net/uuihoo/'} dict.clear(); # 清空词典所有条目 2. Python字典的pop()方法(删除字典给定键 key 所对应的值,返回值为被删除的值) #!/usr/bin/python #

  • 解决Python 遍历字典时删除元素报异常的问题

    错误的代码① d = {'a':1, 'b':0, 'c':1, 'd':0} for key, val in d.items(): del(d[k]) 错误的代码② -- 对于Python3 d = {'a':1, 'b':0, 'c':1, 'd':0} for key, val in d.keys(): del(d[k]) 正确的代码 d = {'a':1, 'b':0, 'c':1, 'd':0} keys = list(d.keys()) for key, val in keys: d

  • python中字典增加和删除使用方法

    增加操作: 变量名[key] = value   # 通过key添加value值,如果key存在则覆盖 user_info = {"name":"冯提莫","like":"喵喵喵"} user_info["height"] = 1.51 # 添加一个元素 print(user_info) #{'name': '冯提莫', 'like': '喵喵喵', 'height': 1.51 user_info[&qu

  • Python字典删除键值对和元素的四种方法(小结)

    目录 1.del删除字典本身 2.pop()删除字典键值对  3.popitem()删除字典键值对 4.clear()删除字典键值对:清空字典中的所有内容,但是不删除字典本身,del删除字典本身 在删除每个字典的时候有些方法和删除其他拥有独立内存的数据使用的方法是一样的,比如del,直接清空内存,clear()是值清除变量值.字典的删除我们从字典对象本身和字典中的键值对两个方面出发,来学习一下. 1.del删除字典本身 del就是从内存级别删除字典本身,让这个字典对象彻底消失.同时也可以删除字典

  • python中list列表删除元素的四种方法实例

    目录 在python列表中删除元素主要分为以下3种场景: del:根据索引值删除元素 pop():根据索引值删除元素 remove():根据元素值进行删除 clear():删除所有元素 补充: 删除元素的变相方法 总结 在python列表中删除元素主要分为以下3种场景: 根据目标元素所在的索引位置进行删除,可以使用del关键字或pop()方法: 根据元素本身的值进行删除,可使用列表(list类型)提供的remove()方法: 将列表中所有元素全部删除,可使用列表(list类型)提供的clear(

  • Python获取当前页面内所有链接的四种方法对比分析

    本文实例讲述了Python获取当前页面内所有链接的四种方法.分享给大家供大家参考,具体如下: ''' 得到当前页面所有连接 ''' import requests import re from bs4 import BeautifulSoup from lxml import etree from selenium import webdriver url = 'http://www.testweb.com' r = requests.get(url) r.encoding = 'gb2312'

  • 使用python实现回文数的四种方法小结

    回文数就是指整数倒过来和原整数相等. Example 1: Input: 121 Output: true Example 2: Input: -121 Output: false Explanation: From left to right, it reads -121. From right to left, it becomes 121-. Therefore it is not a palindrome. Example 3: Input: 10 Output: false Expla

  • java去除数组重复元素的四种方法

    方法1: 需要一个存储去重后元素的数组,然后两层循环,外层遍历原数组,内容逐个判断是否和之后的元素重复,然后再提出来存入新的数组.方法System.arraycopy(被复制的数组,起始下标,接收的新数组,起始下标,结束下标);可以直接复制数组,既然这样,我就没必要纠结新数组的长度了,直接声明一个跟原数组长度一样的临时数组,只要记录下去重后的元素个数,然后就可以确定去重后数组长度再去将临时数组拷贝到新数组就行了. package testPro.test; public class testDi

  • PHP从数组中删除元素的四种方法实例

    茴香豆的"茴"字有四种写法,PHP从数组中删除元素也有四种方法 ^_^. 删除一个元素,且保持原有索引不变 使用 unset 函数,示例如下: <?php $array = array(0 => "a", 1 => "b", 2 => "c"); unset($array[1]); //↑ 你想删除的key ?> 输出: Array (     [0] => a     [2] =>

  • python实现删除列表中某个元素的3种方法

    python中关于删除list中的某个元素,一般有三种方法:remove.pop.del: 1.remove: 删除单个元素,删除首个符合条件的元素,按值删除 举例说明: >>> str=[1,2,3,4,5,2,6] >>> str.remove(2) >>> str [1, 3, 4, 5, 2, 6] 2.pop: 删除单个或多个元素,按位删除(根据索引删除) >>> str=[0,1,2,3,4,5,6] >>&g

  • perl 删除数组元素的几种方法小结

    1. 用grep函数 函数名 grep 调用语法 @foundlist = grep (pattern, @searchlist); 解说 与同名的UNIX查找工具类似,grep函数在列表中抽取与指定模式匹配的元素,参数pattern为欲查找的模式,返回值是匹配元素的列表. 例子 @list = ("This", "is", "a", "test"); @foundlist = grep(/^[tT]/, @list); 结果

  • python与C、C++混编的四种方式(小结)

    混编的含义有两种, 一种是在python里面写C 一种是C里面写python 本文主要是进行简化,方便使用. ##################################################################################################### 第一种.Python调用C动态链接库(利用ctypes) pycall.c /***gcc -o libpycall.so -shared -fPIC pycall.c*/ #inclu

  • python中列表添加的四种方法小结

    目录 列表的添加 1)+ 添加 2)append 追加 3)extend 拉伸 4)insert 插入 在列表指定位置添加元素 列表的添加 1)+ 添加 2)append 追加 一次只能添加一个元素到列表中,适合用于循环里 3)extend 拉伸 可一次添加多个元素到列表中 4)insert 插入 append与extend都是添加在最后,insert可以插入在指定位置 命令 作用 service.insert(n,’ ') 将’'中的内容,插入到第n个之后 service.insert(1,‘

随机推荐