day_05 字典
2024-08-23 04:38:02
1. 字典
1.成对保存数据 ,以key:value形式保存
2.以{}表示,每项内容都是key:value,元素之间用逗号隔开
3.key是不可重复的
4.字典以hash算法来计算key的hash值,使用hash值来保存数据
hash算法得到唯一的值(可能很大,可能很小.可能正数,可能负数)
可hash(不可变)数据类型:int bool str tuplu
不可hash数据类型:list dic set
5.hash算法是无序的,所以字典的储存是无序的
2. 增改删查
1.增
1.dic.["key"]=value dic[字典中不存在的key]=value,如果已存在key,会修改value值
2.setdefault('key',value) 如果字典中key存在,就不会进行任何操作
2.删
1.pop(key) 指定key删除
2.popitem() 看到的是删除最后一个,实际是随机删除的
3.clear() 清空
4.del dic[key]
3.修改
1.dic[key]=新value dic[已经存在的key]=新value
2.dic.update(dic2) 把dic2的内容覆盖到dic1中,如果key存在,则修改value值,
如果key不存在则新增
4. 查询
通过key来查找具体数据
dic[key] 可能会报错 如果key不存在,会报错
dic.get(key) 当key不存在,默认返回NONE
dic.setdefault("x","y") 当key不存在,默认返回y值,当key存在,返回value
3.常见操作
keys() key的集合
values() value的集合
items() 键值对的集合(key,value)
真正的字典的迭代,拿到就是key以及value
for k in dic.keys():
print(k) 类似列表,但不是列表,可以把他当列表用
print(dic(key))
for value in vaues():
print(value) 类似列表,但不是列表,可以把他当列表用
for k,v in items():
print(k,v) 这个东西是列表,但是列表里面装的是元组
延伸:结构
a,b=2,3
print(a,b) 结果是2,3(结构的时候注意数量要匹配)
最新文章
- jquery.fn.extend与jquery.extend--(初体验二)
- [LeetCode] Design Twitter 设计推特
- FTP命令 - Size的问题
- web standards
- MYSQL 的错误Incorrect information in file: '.\test\stuff.frm
- ReentrantLock和synchronized两种锁定机制
- 初学Java之Pattern与Matcher类
- angular2 学习笔记 ( Component 组件)
- UIDatePicker 时间滚动表
- Redis使用详细教程
- Python学习--19 网络编程
- Java对象的内存布局以及对象所需内存大小计算详解
- dotnet检测类型是否为泛型
- 02.Numpy
- load data local to table
- python学习(list增删改查、及常用方法)
- MapReduce原理
- Python基础【day03】:字典(一)
- Microsoft Dynamics CRM 2013 安装 报表服务出现“ SQL Server Reporting Services 帐户是本地用户且不受支持 ”错误的解决方法
- MySQL---索引算法B+/B-树原理(二)