基础数据类型:tuple

1.1  新增

  • dic["key"] = value                            字典中没有key就添加,有key就覆盖
  • dic.setdeafult("key","value")     字典中没有key就添加,有key也不变
### 新增键值对
1 dict = {'name':'hexo' ,'sex':'男'}
2 ### 法一:字典名["key"] = "value"
3 dict['age'] = 2
4 print(dict)
5 ### 法二:字典名.setdefault("key","value")
6 dict.setdefault("age",2)
7 print(dict) 运行结果:
{'name': 'hexo', 'sex': '男', 'age': 2}
{'name': 'hexo', 'sex': '男', 'age': 2}

1.2 删除

  • dic.pop("key")      根据key值删除(有返回值)
  • dic.clear()        清空字典
  • del dic["key"]       删除字典/键值对
  • dic.popitem()       随机删除键值对
### 删除  pop()  clear()   del   popitem()

 1 dict = {'name':'hexo' ,'sex':'男'}
2 # a = dict.pop("name")
3 # print(a,dict) # 删除name键值对
4
5 # a = dict.pop("nameq","没有此键")
6 # print(a,list) # 若将被删除的key值不存在,可以返回“没有此键”
7
8 # dict.clear()
9 # print(dict) # 清空字典
10
11 # del dict
12 # print(dict) # 删除字典
13
14 # del dict["name"] # 删除name键值对
15 # print(dict)
16
17 # a = dict.popitem()
18 # print(a,dict) # 随机删除

1.3 修改

  • dic["key"] = value       将字典中key对应值修改成value
  • dic2.update(dic1)     将字典dic2中的键值对覆盖添加到dic1,dic1原有的键值对不变
### 修改字典

1)修改一个键值对
1 dict = {'name':'hexo' ,'sex':'男'}
2 dict['sex'] = '女'
3 print(dict) 运行结果: {'name': 'hexo', 'sex': '女'}

2)修改整个字典中的键值对
5 dict1 = {'name':'hexo' ,'sex':'男'}
6 dict2 = {'name':'小花','sex':'女'}
7 dict2.update(dict1)
8 print(dict1,"\n",dict2) 运行结果:

{'name': 'hexo', 'sex': '男'} 
 {'name': 'hexo', 'sex': '男'}

1.4 查找

  • dic["key"]                  根据key值查对应的value值
  • dic.get("key",k)      根据key值查对应的value值,如果没有查到key值,则默认返回k;若没有设置k,则返回None
dict = {'name':'hexo' ,'sex':'男'}
# 1、dic['key'] = value
a = dict['name']
print(a)
# 2、dic.get('key')
b = dict.get('name')
print(b)
# 3、通过key值查找到value,如果找不到就默认一个值
c = dict.get('name1','hexo1')
print(c)
###  查询字段的键值对   keys()   values()  items() 
dict = {'name':'hexo' ,'sex':'男'}
1 ### 查询所有的key值
2 keys = dict.keys()
3 print(keys,type(keys))
4 ### 查询所有的value值
5 values = dict.values()
6 print(values,type(values))
7 ### 查询所有的键值对
8 items = dict.items()
9 print(items)

1.5 for 循环打印字典

 1 for k in dic:    #循环打印key
2 print(k)
3 for k in dic.keys(): #循环打印key
4 print(k)
5 for v in dic.values(): #循环打印values
6 print(v)
7 for k,v in dic.items(): #循环打印key + values
8 print(k,v)
9 for k in dic: #循环打印 key + values
10 print(k,dic[k])

【python 3】 字典方法操作汇总的更多相关文章

  1. 【python 3】 列表方法操作汇总

    基础数据类型 : list list主要操作:索引.切片.查询.修改.增加.删除.扩展.统计.排序.获取下标.拷贝…… 1.1  索引  由图: list正向下标从0开始 list反向下标从-1开始 ...

  2. 【python 3】 字符串方法操作汇总

    基础数据类型:str 1.1  字符串大小写转换 所有字母大写 : string.upper() 所有字母小写 : string. lower() 第一个单词的第一个字母大写,其他字母小写 :  st ...

  3. 【python 3】 集合方法操作汇总

    基本数据类型 : set 集合(set)特点 : 无序 不能重复(自动去重) 用 {} 或 set()函数 来表示集合 空集合 : set() 1 name = {"江户部柯南", ...

  4. Python dict字典方法完全攻略(全)

    我们知道,Python 字典的数据类型为 dict,我们可使用 dir(dict) 来查看该类型包含哪些方法,例如: >>> dir(dict)['clear', 'copy', ' ...

  5. python中字典的操作

    ----------字典操作------------ --查字典1. 字典名["元素名称"]2. 字典名.get("元素名称")-获取不存在得元素名称,.get ...

  6. python 创建字典以及操作字典----这是基础知识

    当你编程久了,发现所有的东西都是建立在基础之上的,庞大的代码 你要识别出它的类型是什么 或者返回后类型是什么!? 根据返回的类型 或者需要操作的对象是什么类型  就可以选择相应的方法进行处理 #创建字 ...

  7. 【python】字典/dictionary操作

    字典(dictionary) 字典是另一种可变容器模型,且可存储任意类型对象. 字典的每个键值 key=>value 对用冒号:分割,每个键值对之间用逗号,分割,整个字典包括在花括号 {} 中 ...

  8. python 通用字典方法

    版本1 方法 # 不传返回所有属性,传入props只返回传入的对应属性 def m_dict(obj, props=[]): result = {} target = obj else props f ...

  9. python 中字典的操作(增、删、改、查)

    字典是另一种可变容器模型,且可存储任意类型对象,下标从0开始,最后一个为-1. 字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({}) ...

随机推荐

  1. Linux如何实现进程监控和守护

    最近新搭建的亚马逊EC2服务器, 上面部署了一个静态的WEB, 启动了一个nginx做代理.最近发现一个问题: Nginx进程隔一段时间就莫名的挂掉了, 然后就出现了网站无法打开的窘境.. 为了防止这 ...

  2. Python字符串常用方法(一)

    一.字符串的判断常用方法 字符串的字母,数字,大小写,空格等的判断 1.string. isalnum() :(字母数字判断) 如果 string 至少有一个字符并且所有字符都是字母或数字则返回 Tr ...

  3. tensorflow-用DASC结合Inception-v3对imagenet2012聚类实现

    一.目的 以imagenet2012作为数据集,用Inception-v3对图像提取特征作为输入,来训练一个自编码器. 以上作为预训练模型,随后在该自编码器的基础上,中间加入一个自表示层,将最终学习到 ...

  4. Xamarin Forms Api请求开源框架Refit

    用于.NET Core,Xamarin和.NET的自动类型安全的REST库,Refit是一个受Square Square Retrofit库影响的库,但它比REST API更容易: public in ...

  5. lock 单例模式

    单例模式只允许创建一个对象,因此节省内存,加快对象访问速度,因此对象需要被公用的场合适合使用,如多个模块使用同一个数据源连接对象等等 网站的计数器,一般也是采用单例模式实现,否则难以同步 单例模式要素 ...

  6. Windbg程序调试系列5-高CPU问题分析

    上篇博客中给大家分享了使用Windbg进行Live Debugging: Windbg程序调试系列4-Live Debugging 本篇中我们继续,跟大家分享常见的应用程序高CPU使用率问题分析. 先 ...

  7. laravel 自动加载 自定义的文件/辅助函数

    需求 在 laravel 中自定义了一些 辅助函数,想要laravel框架自动加载这些函数 实现 将自定义的辅助函数放在helpers.php文件中,如下: 在compsoer.json 的 auto ...

  8. Java EE开发技术课程第七周(json)

    JSON: https://baike.baidu.com/item/JSON/2462549?fr=aladdin JSON指JavaScript对象表示法(JavaScript Object No ...

  9. 2018-2019-2 《网络对抗技术》Exp0 Kali安装 Week1 20165316

    2018-2019-2 <网络对抗技术>Exp0 Kali安装 Week1 20165316 下载 我分别下载了kali-linux-2019.1-i386的镜像文件和kali-linux ...

  10. IP通信基础学习第四周(下)

    选择子网掩码时,不总是使用整个八位作为屏蔽位. 在每个子网中,子网掩码是相同的. 在划分子网的情况下,判断两台主机是不是在同一子网中,需看它们的网络号与子网地址是不是相同的. 变长子网掩码VLSM,无 ...