基础数据类型: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. NLog的介绍使用

    https://www.cnblogs.com/zhangchengye/p/6297685.html

  2. 【LeetCode每天一题】Edit Distance(编辑距离)

    Given two words word1 and word2, find the minimum number of operations required to convert word1 to  ...

  3. Mac下vim7.4+vimgdb让vim支持gdb源码调试

    下载vimgdb https://github.com/cpiger/vimgdb-for-vim7.4 下载vim7.4源码 将两个文件或者文件夹放到同一个目录解压 tar xjvf vim-7.4 ...

  4. 关于网站的一些js和css常见问题的记录

    1. 文字超过宽度,给这个后面超过的文字用...来表示  white-space: nowrap;

  5. weixin://connectToFreeWifi/?apKey=协议如何跳转到微信客户端打开在wifi指定任意网页?

    微信门店wifi接口,任意站跳转,跳转二维码长按识别加粉,接口支持动态传参数,支持微信支付等特殊接口对接. 代码如下使用 <head> <meta charset="utf ...

  6. “tar: Removing leading `/’ from member names”的错误

    “tar: Removing leading `/’ from member names”的错误 使用tar打bz2压缩的时候报的错误,解决方案:加入参数: P (大写的屁) # tar -jcPf ...

  7. python下载及安装

    1, 许多新学员不知道开始学Python需要安装什么,需要准备什么,特地写下这篇文档给一脸懵逼的新同学们作为指导文档. 2, 首先,学Python需要有一台电脑,这是必须的.老师的系统是windows ...

  8. Oracle游标介绍

    Oracle游标使用详解: 游标: 用来查询数据库,获取记录集合(结果集)的指针,我们所说的游标通常是指显式游标,因此从现在起没有特别指明的情况,我们所说的游标都是指显式游标.要在程序中使用游标,必须 ...

  9. [批处理]使用IncrediBuilder加速自动化测试过程

    背景 1.目前单机全部跑完一次测试的时间大概是5个小时 2.7个虚拟机进行分布式执行的时间大概为3.5小时(包含复制.收集日志的时间) 预期 期望通过IncrediBuilder的虚拟进程的功能在单机 ...

  10. Ubuntu16.04安装Redis

    前言 Redis是常用基于内存的Key-Value数据库,比Memcache更先进,支持多种数据结构,高效,快速.用Redis可以很轻松解决高并发的数据访问问题:作为实时监控信号处理也非常不错. 环境 ...