字典类型
字典:python的基础数据类型之一
作用 :可以存储大量的数据,属于关系型数据。属于python中唯一一种映射类的数据类型
数据类型分类:
可变的(不可哈希)数据类型:list(列表),dict(字典)
不可变(可哈希)数据类型:str,int,bool
字典中键(key)值(valu)是对应存在的
格式是 { 键:值}
字典的键是不可变的数据类型(工作中,都是由数字或者str组成)。
字典的值是可变的数据类型
字典的优点:
字典可以存储大量的数据,且查询速度快
注意:在python3.5版本之前,字典是无序的,从python3.6之后字典就变成有序的
增
第一种: dic["name"] = "libai" #(有则改之,无则加冕)如果列表中没有此键,就会在字典尾添加这个键值对,如有有就会将这个键对应的值更改掉
第二种:dic.setdefault(键,值) # 有则pass,且返回字典中键对应的值,无则添加
删
第一种:dic.pop(键) 有返回值 #有则删除,没有就会报错
第二种:dic.popitem() 删除字典尾的一个键值对
第三种:dic.clear() 直接将字典清空,剩下空字典
第四种:del 用法一:del dic[键] 删除某个键值对,如果没有就会报错
用法二:del dic 在内存中删除字典
改
第一种:dic[键] = “更改后元素”
第二种:dic.update(name="更改后的内容") #可以dic.update(dic2) 将dic2字典中的键值对对dic进行(有同样键的就替换,没有的就添加在字典dic中)
查
第一种:print(dic[键]) 如果字典中没有此键,就会报错
第二种:print(dic.get(键”)) 如果没有此键,就会默认输出None,可以更改默认 例:dic.get(键,“查无此键”) 此时如果没有就会返回查无此键
其他查询:
dic.keys() 查询字典中的keys(键)#类似于列表的容器中
dic.values() 查询字典中的values(值)#类似于列表的容器中
可以用list(dic.keys) 转变成列表的形式
for key in dic.keys() #可以进行遍历 #遍历:循环打印每个元素
print(key) #这里的key类型是<class 'dict_keys'>
dic.items() 键与值一起(不好形容) 都可以用for循环来打印可以转换成列表
dic = {'name': '太白', 'age': 18, 'sex': '男', 'job': 'IT'} s1 = list(dic.items()) for key,value in s1: print(key,value,type(key),type(value)) #输出 name 太白 <class 'str'> <class 'str'> age 18 <class 'str'> <class 'int'> sex 男 <class 'str'> <class 'str'> job IT <class 'str'> <class 'str'>