字典以键值对的形式存在,
基础数据类型之一, key value 的形式存在. 也是映射数据类型. 存储的都是关系型数据.
dic = {"name":"刘丙寅","age":26,"sex":["男","正面","左面","右面"]}
容器类: 容器类的数据类型:list[], dict{}, tuple(). 费容器类的数据类型:str,int,bool. 字典的key 必须是不可变的数据类型. 只能从:str tuple()元素 int bool布尔值.中设置类型. 字典的value 可以是任意的数据类型. 字典的查询速度非常快. 键是唯一的.存在一个hash算法. 字典的键都会通过hash表 转换成数字.
增: 两种不同的方式进行增加.
1.dic["like"] = "basketball" # 有则覆盖掉原来的数据,没有则添加数据.
2.dic.setdefault("sex",24) # 有则不做修改,没有则添加数据.
删:
dic.pop("age") #按照键去删除整个键值对.
dic.pop("age","没有这个键..") #后面增加这个参数 如果字典里面没有这个键也不会报错.
#清空字典 dic.clear()
#随机删除 dic.popitem()
#删除整个字典 del dic
#删除字典里面的键值对. del dic["name"]
改:
dic["sex"] = "男"
#这也叫修改 #update 是针对两个字典的更改.
dic1 = {"name":"宋1","age":24,"name_list":["反面","正面","左面","右面"]}
dic = {"name":"刘丙寅","age":26}
dic1.update(dic) #将dic 里面的所有键值对,全部覆盖添加到dic2中.
print(dic1) {'name': '刘丙寅', 'age': 26, 'name_list': ['反面', '正面', '左面', '右面']}
查:
1.dic["name"] 没有此键会报错.
2.dic.get("name1")
3.for 循环查询 dic.keys() dic.values() dic.items()
返回的都是类似于列表的数据类型. 可遍历 没有索引. 直接用list将这个包裹 便可转换为列表
直接循环遍历一个字典 就是 去的所有的键.