先来安利一下:字典的键必须是可哈希的。(通俗理解就是不可变的,比如,int,str,tuple.因为这样就可以将你这个键固定好,查的时候很快!)1.字典的增加1)赋值操作D[key] = value2)setdefault()def setdefault(self, k, d=None): # real signature unknown; restored from __doc__""" D.setdefault(k[,d]) -> D.get(k,d), also set D[k]=d if k not in D """pass用法:如果只有一个参数,功能与get()方法一样,用来查询(见后面)。如果有两个参数,第一个参数k为键,第二个参数d为值。如果有两个参数,第一个参数k不存在,那么会将这个键值对存入字典D中。如果第一个参数k存在,那么原字典D中键为k的值不变。注意:该方法有返回值,一个参数与get()方法一样。两个参数,返回,进行完setdefault()操作后再对字典进行get()操作。例子:dic = {'haixing': "还行"}dic.setdefault('haixing', '我爱你')#如果存在不会替换print(dic) #->{'haixing': '还行'}dic = {'haixing': "还行"}dic.setdefault('hello', '我爱你')#如果不存在加入字典print(dic)    #->{'haixing': '还行', 'hello': '我爱你'}2.字典的删除1)pop()def pop(self, k, d=None): # real signature unknown; restored from __doc__"""D.pop(k[,d]) -> v, remove specified key and return the corresponding value.If key is not found, d is returned if given, otherwise KeyError is raised"""pass用法:如果只有一个参数k,那么将会删除键k对应的键值对,如果没有键k那么将会报错。如果有两个操作,那么将会删除键k对应的键值对,如果没有键k那么将会输出默认值d。注意:有返回值。返回k键k对应的值value。例子:dic = {'woaini': '我爱你', 'zhongguo': '中国', 'qinaide': '亲爱的'}res = dic.pop('woaini')   #返回value值print(res) #->我爱你print(dic) #->{'zhongguo': '中国', 'qinaide': '亲爱的'}
dic = {'woaini': '我爱你', 'zhongguo': '中国', 'qinaide': '亲爱的'}res = dic.pop('wi','啊啊啊')   #返回默认值值print(res) #->啊啊啊print(dic) #->{'woaini': '我爱你', 'zhongguo': '中国', 'qinaide': '亲爱的'}2)deldel D[key]  删除key对应的键值对3)popitem()def popitem(self): # real signature unknown; restored from __doc__"""D.popitem() -> (k, v), remove and return some (key, value) pair as a2-tuple; but raise KeyError if D is empty."""pass用法:随机删除一组键值对。并以元组的形式返回所删键值对。如果字典D为空则报错。例子:dic = {'woaini': '我爱你', 'zhongguo': '中国', 'qinaide': '亲爱的'}res = dic.popitem()# 随机删除一个,返回键值组成的一个元组print(res) #->('qinaide', '亲爱的')print(dic) #->{'woaini': '我爱你', 'zhongguo': '中国'}4)clear()D.clear()  直接清空字典,返回{}3.字典的修改1)赋值操作D[key] = value [通过键key来修改]例子:dic = {'qian': 1000000, 'zhongguo': '中国', 'qinaide': '亲爱的'}dic['qian'] = '我喜欢'print(dic) #->{'qian': '我喜欢', 'zhongguo': '中国', 'qinaide': '亲爱的'}2)update()def update(self, E=None, **F): # known special case of dict.update"""D.update([E, ]**F) -> None.  Update D from dict/iterable E and F.If E is present and has a .keys() method, then does:  for k in E: D[k] = E[k]If E is present and lacks a .keys() method, then does:  for k, v in E: D[k] = vIn either case, this is followed by: for k in F:  D[k] = F[k]"""pass用法:D.update(E),将字典E中的键值对并到D中,如果存在键key相等,将会被覆盖。例子:dic1 = {'1': 11111, "2": 222222, '3':  33333}dic2 = {'4': 44444,'2': '二二二二'}dic1.update(dic2)  #将dic2里面的内容追加到dic1中,如果dic1中存在dic2的内容则被dic2覆盖print(dic1) #->{'1': 11111, '2': '二二二二', '3': 33333, '4': 44444}print(dic2) #->{'4': 44444, '2': '二二二二'}4.字典的查询1)那key当索引D[key] ->返回键key对应的值value例子:dic = {'及时雨': '宋江', '易大师': '剑圣', '大宝剑': '盖伦'}print(dic['易大师']) #->剑圣print(dic['提莫'])  #会报错2)get()def get(self, k, d=None): # real signature unknown; restored from __doc__""" D.get(k[,d]) -> D[k] if k in D, else d.  d defaults to None. """pass用法:如果只有一个参数k,如果k存在,那么将会返回k对应的值value。如果k不存在,那么将会返回None。如果有两个参数,d为默认值,如果k存在那么将会返回k对应的值value。如果不存在将会返回默认值d。例子:dic = {'及时雨': '宋江', '易大师': '剑圣', '大宝剑': '盖伦'}print(dic.get('易大师')) #->剑圣        #存在返回value值    print(dic.get('提莫'))   #——>None      #不存在返回None     print(dic.get('提莫','迅捷')) #->迅捷   #不存在返回第二个参数的默认值 3)setfefaule()def setdefault(self, k, d=None): # real signature unknown; restored from __doc__""" D.setdefault(k[,d]) -> D.get(k,d), also set D[k]=d if k not in D """pass用法:如果只有一个参数,功能与get()方法一样,用来查询。如果有两个参数,第一个参数k为键,第二个参数d为值。如果有两个参数,第一个参数k不存在,那么会将这个键值对存入字典D中。如果第一个参数k存在,那么原字典D中键为k的值不变。例子:dic = {'及时雨': '宋江', '易大师': '剑圣', '大宝剑': '盖伦'}print(dic.setdefault('易大师'))   #->剑圣   #一个参数和get返回值一样print(dic.setdefault('提莫'))  #->None    #一个参数和get返回值一样
dic = {'及时雨': '宋江', '易大师': '剑圣', '大宝剑': '盖伦'}print(dic.setdefault('提莫','迅捷')) #->迅捷   #将他加入列表再执行get操作print(dic.setdefault('易大师','迅捷')) #->剑圣  #将他加入列表再执行get操作5.其他相关操作1)keys()def keys(self): # real signature unknown; restored from __doc__""" D.keys() -> a set-like object providing a view on D's keys """pass用法:将字典D中的所有键key以列表的形式取出,放入一个dict_keys()中,他可用来遍历。例子:dic1 = {'1': 11111, "2": 222222, '3':  33333}print(dic1.keys()) #->dict_keys(['1', '2', '3'])for i in dic1.keys():print(i)2)values()def values(self): # real signature unknown; restored from __doc__""" D.values() -> an object providing a view on D's values """pass用法:将字典D中的所有值value以列表的形式取出,放入一个dict_values()中,他可用来遍历。例子:dic1 = {'1': 11111, "2": 222222, '3':  33333}print(dic1.values())#->dict_values([11111, 222222, 33333])for i in dic1.values():print(i)3)items()def items(self): # real signature unknown; restored from __doc__""" D.items() -> a set-like object providing a view on D's items """pass用法:将字典D中的所有键值对以列表的形式取出,键值对以元组形式存,放入一个dict_items()中,他可用来遍历。例子:dic1 = {'1': 11111, "2": 222222, '3':  33333}print(dic1.items())#->dict_items([('1', 11111), ('2', 222222), ('3', 33333)])for i in dic1.items():print(i)4)fromkeys()def fromkeys(*args, **kwargs): # real signature unknown""" Returns a new dict with keys from iterable and values equal to value. """pass用法:给一个可迭代对象的所有元素,给他们相同的值value。用来初始化例子:dic = dict.fromkeys([1,2,3,4], 'ss')print(dic)  #->{1: 'ss', 2: 'ss', 3: 'ss', 4: 'ss'}5)copy()def copy(self): # real signature unknown; restored from __doc__""" D.copy() -> a shallow copy of D """pass对字典D进行浅拷贝,返回一个和D相同键值对的新字典。浅拷贝后面介绍代码得多敲,不能光看。

转载于:https://www.cnblogs.com/xiao-xue-di/p/9273898.html

Python字典的常用操作相关推荐

  1. python字典常用操作方法,python字典的常用操作方法

    Python字典是另一种可变容器模型(无序),且可存储任意类型对象,如字符串.数字.元组等其他容器模型.本文章主要介绍Python中字典(Dict)的详解操作方法,包含创建.访问.删除.其它操作等,需 ...

  2. Python中字典的常用操作

    一.字典的定义 1.字典是存储信息的一种方式. 2.字典以键-值对存储信息,因此字典中的任何一条信息都与至少一条其他信息相连. 3.字典的存储是无序的,因此可能无法按照输入的顺序返回信息. 二.字典的 ...

  3. python字典(dict)+常用方法操作+列表、元组、集合、字典的互相转换

    python字典(dict)+常用方法操作+列表.元组.集合.字典的互相转换 字典也是 Python 提供的一种常用的数据结构,它用于存放具有映射关系的数据. 为了保存具有映射关系的数据,Python ...

  4. python图像处理的常用操作

    python图像处理的常用操作 裁剪 持续更新 裁剪 import cv2img = cv2.imread("1.jpg") print(img.shape) cropped = ...

  5. Python之Numpy常用操作

    Numpy常用操作 文章目录 Numpy常用操作 1.数组初始化 2.数组基本运算 3.多维数组组合 4.数组中查找最大/小索引 5.查找符合条件元素索引 6.更改数组维度 1.数组初始化 # 生成特 ...

  6. 3.1 Python 字符串类型常用操作及内置方法

    文章目录 1. Str 字符串 1.1 字符串 1.2 反斜杠 1. 字符串跨行书写 2. 转义字符 1.3 打印引号 1. 错误示例 2. 解决方法 1.4 三引号 1.5 原始字符串 1. 正确示 ...

  7. python+selenium浏览器常用操作(一)

    1.导入selenium自定义的webdriver.后续可通过调用此协议启动各大浏览器 from selenium import webdriver #浏览器 from selenium.webdri ...

  8. python的一些常用操作

    判断文件或者文件夹是否存在 if(os.path.exists(rootdir) == False) 创建文件夹 os.mkdir(rootdir) 调用系统命令 os.system(cmd) 字典循 ...

  9. python 字典的值可以为集合吗_转:Python字典与集合操作总结

    1 一.创建字典2 方法①:3 >>> dict1 ={}4 >>> dict2 = {'name': 'earth', 'port': 80}5 >> ...

最新文章

  1. SQL注入—我是如何一步步攻破一家互联网公司的
  2. 正确获取硬盘序列号源码
  3. php mysql查询结果_php对mysql查询结果进行分页 - ceil
  4. 【POJ - 1273】Drainage Ditches(网络流,最大流,模板)
  5. 安卓修改wifi已停用_手机连不上wifi显示已保存怎么回事【原因介绍】
  6. 基于DotNet构件技术的企业级敏捷软件开发平台 - AgileEAS.NET - ActiveXForm运行容器...
  7. 阿里、腾讯 | 算法岗面试复盘
  8. mysql 5.7 主主配置文件_MySQL 5.7主主备份配置
  9. Xshell/Xftp个人完全免费版
  10. VBA实战(6) - 数组
  11. TensorFlow和PyTorch框架绘制loss和accuracy曲线
  12. 普乐蛙4d5d动感影院|VR太空旅行设备|VR带你遨游太空
  13. 油管视频目录正则整理
  14. vue 点击打开pdf
  15. 基于python的水果销售系统设计与实现 django框架毕业设计毕设参考
  16. 动态规划---01背包问题详解
  17. python开发cs程序_CSE209代做、代写Computer Graphics、代做CS/python编程设计代写Python程序|代做Processing...
  18. Android学习之RecyclerView的使用
  19. svn update冲突解决
  20. 户外露营冷藏箱的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告

热门文章

  1. Chrome开发者工具关于网络请求的一个隐藏技能 1
  2. SAP成都研究院CEC团队三巨头之一:M君的文章预告
  3. 数组|leetcode59.螺旋矩阵II
  4. java当中各种流的应用场景_Java中有哪些流,常用流有哪些并有何特点和使用场景 NIO流,特性及使用时注意的事项 IO与NIO区别...
  5. docker $PWD路径_使用docker炼丹
  6. 打印字符串(C语言,全排列)
  7. python和sqlserver应用_Windows和Linux下使用Python访问SqlServer的方法介绍
  8. android 使用wps打开的xls没有刷新_Excel文件打开都变成了WPS,如何改回微软Excel
  9. java反射随意值_Java反射笔记
  10. Ultra96_v2实现交通标示识别