python中dict使用方法详解


Posted in Python onJuly 17, 2019

dict的特性

dict是python中的一个可变的数据类型,用{}表示,dict的key必须是不可变的数据类型,而value的数据类型可以任意。

格式:{key:value,key:value,key:value}
注: 键值对如果是字符串使用单引号,最后一个键值对没有逗号

dict的优点

①:查询速度快,可以二分查找

②:key是不可以重复的

注:

 

不可变数据类型: 元组,bool,int , str 可以hash set

可变数据类型: dict ,list

dict的方法

1,增加的方法:dict有两种增加的方法

(1),如果没有的键值对,则进行添加,如果有,则将值进行覆盖

dict1={'name':'jinxin','age':18,'male':'男'}
print(dict1)
dict1['high']=185
print(dict1) # {'name': 'jinxin', 'age': 18, 'male': '男', 'high': 185}
dict1['age']=16
print(dict1) # {'name': 'jinxin', 'age': 16, 'male': '男', 'high': 185}

(2),如果有键值对,不做任何改变,没有键值对,才进行添加

dict1.setdefault("weight")
print(dict1) #{'name': 'jinxin', 'age': 16, 'male': '男', 'high': 185, 'weight': None}
dict1.setdefault('weight','65kg')
print(dict1) #{'name': 'jinxin', 'age': 16, 'male': '男', 'high': 185, 'weight': None}
dict1.setdefault('address','北京')
print(dict1) #{'name': 'jinxin', 'age': 16, 'male': '男', 'high': 185, 'weight': None, 'address': '北京'}

2,dict的删除方法

(1),使用pop()删除,如果有键,则删除,如果没有则会报错,如果不希望出现报错信息,可以在删除的后面添加信息

delDict={'name': 'jinxin', 'age': 16, 'male': '男', 'high': 185, 'weight': None, 'address': '北京'}
# delDict.pop('age') #dict的删除操作是有返回值的
print(delDict.pop('age')) # 16
print(delDict) #{'name': 'jinxin', 'male': '男', 'high': 185, 'weight': None, 'address': '北京'}
print(delDict.pop('职业','没有此键')) #没有此键

(2),使用popitem()删除,随机删除,返回的是一个元组,元组里面存储的删除的键值,推荐使用pop()方法进行删除

print(delDict.popitem()) # ('address', '北京')

随机删除,返回值是删除的键值对

print(delDict) #{'name': 'jinxin', 'male': '男', 'high': 185, 'weight': None}

(3),使用del()删除,del()可以删除整个字典,也可以删除字典的某个键,如果删除的键不存在,则会出现报错

del delDict['name']
print(delDict) #{'male': '男', 'high': 185, 'weight': None}
#使用del清空列表
del delDict
print(delDict) #delDict已经删除,报错

(4),清空列表也可以使用clear()

3,dict的修改

#直接修改
updateDict={'name':'jinxin','age':18,'male':'男'}
updateDict['name']='Jordan'
print(updateDict['name']) #Jordan

#调用update()修改
dictDemo={'name':"Jordan",'age':18}
dictDemo1={'address':'北京海淀','age':22}
dictDemo.update(dictDemo1)
print(dictDemo)

4,字典的查询

(1)查询字典的键:调用keys()方法

查询字典的值:调用values()方法

# 字典的查
dict1={'name':'jinxin','age':18,'male':'男'}
print(dict1.keys()) #dict_keys(['name', 'age', 'male'])
print(dict1.values()) #dict_values(['jinxin', 18, '男'])
print(dict1.items())# dict_items([('name', 'jinxin'), ('age', 18), ('male', '男')])

#打印dict1的键
for i in dict1.keys():
  print(i ) # name age value

#打印dict的值
for v in dict1.values():
  print(v) #jinxin 18 男

#打印字典的键值:

dict1={'name':'jinxin','age':18,'male':'男'}

for i in dict1.items():
  print(i) # ('name', 'jinxin') ('age', 18) ('male', '男')
  
for k,v in dict1.items():
  print(k,v) # name jinxin age 18  male 男

(2),字典的get()方法:使用get()方法可以查询某个键是否存在,如果不存在此键,则会返回None,但是可以在get()方法中添加信息避免出现None

dict1={'name':'jinxin','age':18,'male':'男'}
print(dict1.get('name')) #jinxin
print(dict1.get('address')) # None
print(dict1.get('address','没有此键')) #没有此键

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现数通设备端口监控示例
Apr 02 Python
Python with用法实例
Apr 14 Python
浅谈python函数之作用域(python3.5)
Oct 27 Python
python print 按逗号或空格分隔的方法
May 02 Python
解决Mac安装scrapy失败的问题
Jun 13 Python
python3实现二叉树的遍历与递归算法解析(小结)
Jul 03 Python
python对常见数据类型的遍历解析
Aug 27 Python
python对象转字典的两种实现方式示例
Nov 07 Python
Python hashlib常见摘要算法详解
Jan 13 Python
python解析xml文件方式(解析、更新、写入)
Mar 05 Python
python读取pdf格式文档的实现代码
Apr 01 Python
pytorch 带batch的tensor类型图像显示操作
May 20 Python
python中tkinter的应用:修改字体的实例讲解
Jul 17 #Python
python对矩阵进行转置的2种处理方法
Jul 17 #Python
使用Filter过滤python中的日志输出的实现方法
Jul 17 #Python
纯python进行矩阵的相乘运算的方法示例
Jul 17 #Python
python中update的基本使用方法详解
Jul 17 #Python
python利用wx实现界面按钮和按钮监听和字体改变的方法
Jul 17 #Python
使用Python和Scribus创建一个RGB立方体的方法
Jul 17 #Python
You might like
php面向对象全攻略 (五) 封装性
2009/09/30 PHP
php下使用SimpleXML 处理XML 文件
2010/02/27 PHP
flash用php连接数据库的代码
2011/04/21 PHP
PHPStorm+XDebug进行调试图文教程
2016/06/13 PHP
常用PHP数组排序函数归纳
2016/08/08 PHP
php传值和传引用的区别点总结
2019/11/19 PHP
php计数排序算法的实现代码(附四个实例代码)
2020/03/31 PHP
javascript的对话框详解与参数
2007/03/08 Javascript
高性能WEB开发 flush让页面分块,逐步呈现 flush让页面分块,逐步呈现
2010/06/19 Javascript
固定背景实现的背景滚动特效示例分享
2013/05/19 Javascript
基于javascript实现简单计算器功能
2016/01/03 Javascript
js获取浏览器高度 窗口高度 元素尺寸 偏移属性的方法
2016/11/21 Javascript
微信小程序 首页制作简单实例
2017/04/07 Javascript
jQuery绑定事件方法及区别(bind,click,on,live,one)
2017/08/14 jQuery
vue-ajax小封装实例
2017/09/18 Javascript
jQueryMobile之窗体长内容的缺陷与解决方法实例分析
2017/09/20 jQuery
Vue2.0父子组件传递函数的教程详解
2017/10/16 Javascript
详解webpack-dev-server的简单使用
2018/04/02 Javascript
跨域请求两种方法 jsonp和cors的实现
2018/11/11 Javascript
Layui 数据表格批量删除和多条件搜索的实例
2019/09/04 Javascript
vue 弹出遮罩层样式实例
2020/07/22 Javascript
python调用windows api锁定计算机示例
2014/04/17 Python
Python实现抓取网页并且解析的实例
2014/09/20 Python
IntelliJ IDEA安装运行python插件方法
2018/12/10 Python
python之当你发现QTimer不能用时的解决方法
2019/06/21 Python
利用pyecharts实现地图可视化的例子
2019/08/12 Python
python获取array中指定元素的示例
2019/11/26 Python
澳大利亚婴儿礼品公司:The Baby Gift Company
2018/11/04 全球购物
董事长助理岗位职责
2014/02/18 职场文书
地球一小时倡议书
2014/04/15 职场文书
四年级评语大全
2014/04/21 职场文书
财务会计求职信范文
2015/03/20 职场文书
2015年全国“爱牙日”宣传活动总结
2015/03/23 职场文书
入党积极分子党支部意见
2015/06/02 职场文书
学困生转化工作总结
2015/08/13 职场文书
python开发飞机大战游戏
2021/07/15 Python