当前位置: 首页 > news >正文

3.字典常用功能

3.字典常用功能

1#如果键存在,就是修改。否则是新增
#根据键删除,并返回对应的值
info = {
'name':'维克托',
'sex':'男',
'hobby':'激光',
}
info['sex']='女'
print(info)
print('*'*100)
ret=info.pop('name')
print(ret)
print(info)
print('***************************************************')
2#删除键,清空表
del info['name']
print(info)
info.clear()
print(info)print('***************************************************')
3#如果键不存在,默认返回None
print(info.get('name2'))
print(info.get('name2','yes'))
#所有键 ks = info.keys()
#所有的值 vs = info.values()
#所有的键值对 items = info.items()
for i in items:
print(i)
4打印所有键值对
print('***************************************************')
for循环
1.for i in info.keys():
print('%s,%s'%(i,info.get(i)))
根据键值遍历
for i in info.items():
print('%s,%s'%(i[0],i[1]))
for k,v in info.items():
print('%s:%s'%(k,v))

#返回一个新字典内容一样,地址不同
info2=dict.copy(info1)

dict.fromkeys(seq[, val]))
5创建一个新字典,以序列seq中的元素做字典的键,val 为字典所有键对应的初始值
# ls = ['a','b','c']
# info3=dict.fromkeys(ls,'cv')
# print(info3)
print('***************************************************')
和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default 如果键在字典中,
返回这个键所对应的值。如果键不在字典中,向字典中插入这个键,并且以default为这
个键的值,并返回 default。default的默认值为None
# info4={
# 'a': 85,
# 'b': 55,
# 'c': 95,
# }
# ret=info4.setdefault('a',33)
# print(info4)

print('***************************************************')
6把一个字典的值更新到另一个字典中
info6={
# 'a': 85,
# 'b': 55,
# 'c': 95,
# }
# info5={
# 'd': 85,
# 'e': 55,
# 'a': 95,
# }
# info5.update(info6)
# print(info5)
print('***************************************************')
dict的特点:
1.查找速度快,不会随着key的增加而变慢
需要占用大量的内存,内存浪费多
list的特点:
1.查找和插入的时间随着元素的增加而增加
2.占用空间小,浪费内存小

dict 是用空间换时间的方法

set是一个无序,不能重复的集合容器,所以可以用来过滤重复元素。
add(obj)
新增 remove(obj) 移除 |
并集 & 交集 - 差集 -

# set.add(4)
# print(set)
# set.remove(1)
# print(set)
# set2={2,3,5}
# set1={1,2,3,4}
# set=set1|set2
# print(set)
# set=set1&set2
# print(set)
# set=set2-set1
# print(set)

 

posted on 2018-08-23 16:39 五杀摇滚小拉夫 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/lvjing/p/9524693.html

相关文章:

  • java多线程下载
  • MySQLdb的安装与使用
  • 谋势、聚力、强生态,用友三十而立
  • linux下svn服务器搭建
  • 聊聊sentinel的AuthoritySlot
  • element.style覆盖了我的样式!!
  • 折腾一天终于尝到了 signalr core了
  • IP地址便捷修改器 V3.5 绿色版
  • 解决子级用css float浮动 而父级div没高度不能自适应高度
  • 滴滴公布自查进展:免去黄洁莉顺风车事业部总经理职务
  • 浅谈HTML5单页面架构(一)——requirejs + angular + angular-route
  • DHCP的配置文档
  • 53次课( NFS介绍、 NFS服务端安装配置、NFS配置选项)
  • 列出对像属性,for(var i in obj)[转]
  • mongodb嵌套文档结构设计
  • [分享]iOS开发-关于在xcode中引用文件夹右边出现问号的解决办法
  • [译]Python中的类属性与实例属性的区别
  • 11111111
  • ES6--对象的扩展
  • Hibernate【inverse和cascade属性】知识要点
  • JavaScript/HTML5图表开发工具JavaScript Charts v3.19.6发布【附下载】
  • JS题目及答案整理
  • LeetCode29.两数相除 JavaScript
  • npx命令介绍
  • python3 使用 asyncio 代替线程
  • react-core-image-upload 一款轻量级图片上传裁剪插件
  • Spark VS Hadoop:两大大数据分析系统深度解读
  • 多线程 start 和 run 方法到底有什么区别?
  • 来,膜拜下android roadmap,强大的执行力
  • 前嗅ForeSpider采集配置界面介绍
  • 使用 @font-face
  • ​【C语言】长篇详解,字符系列篇3-----strstr,strtok,strerror字符串函数的使用【图文详解​】
  • ​软考-高级-系统架构设计师教程(清华第2版)【第1章-绪论-思维导图】​
  • # 深度解析 Socket 与 WebSocket:原理、区别与应用
  • (1)STL算法之遍历容器
  • (26)4.7 字符函数和字符串函数
  • (AtCoder Beginner Contest 340) -- F - S = 1 -- 题解
  • (编译到47%失败)to be deleted
  • (附源码)计算机毕业设计SSM疫情社区管理系统
  • (转)VC++中ondraw在什么时候调用的
  • (转载)VS2010/MFC编程入门之三十四(菜单:VS2010菜单资源详解)
  • (轉貼) 資訊相關科系畢業的學生,未來會是什麼樣子?(Misc)
  • .htaccess配置重写url引擎
  • .Net Web窗口页属性
  • .NET6实现破解Modbus poll点表配置文件
  • ::前边啥也没有
  • @for /l %i in (1,1,10) do md %i 批处理自动建立目录
  • [ MSF使用实例 ] 利用永恒之蓝(MS17-010)漏洞导致windows靶机蓝屏并获取靶机权限
  • [20180312]进程管理其中的SQL Server进程占用内存远远大于SQL server内部统计出来的内存...
  • [AutoSar]状态管理(五)Dcm与BswM、EcuM的复位实现
  • [C# 开发技巧]如何使不符合要求的元素等于离它最近的一个元素
  • [CERC2017]Cumulative Code
  • [CSS]浮动
  • [emuch.net]MatrixComputations(7-12)
  • [iOS]-网络请求总结