字典:
概念: 是以 key-value 来存储多个值,查找速度快
注意:1.字典是可变数据类型
注意:2.字典是是无序
key的特点;
1,key是唯一的
2.key需要不可变类型的数据
3.数字,字符串等不可变的类型可以作为key
4.列表,字典是可变数据类型,不能作为key
list与dict的比较
字典:
插入与查找速度快,随着字典存储的数量增大而不会产生过大的影响
需要占用大量的内存,内存浪费多
列表:
插入与查找速度慢,随着列表储的数量增大而会产生过大的影响
需要占用少量的内存,内存浪费少
字典的定义
格式: {key0:value0,key1:value1,key2:value2}
描述: 字典的格式 是以 {} 来包裹字典元素, 元素是以
key:value的形式来存储(以冒号连接), 元素与元素之间是以逗号连接
dict2 = {“tom”:20,“李磊”:“30”,“lilei”:40,“wen”:100}
通过key来获取数据, 格式 : dict[key]
age1 = dict2[“lilei”]
通过get方法来访问 格式: dict.get(key)
age2 = dict2.get(“李磊2”)
设置默认值 当key没有对应的值时,设置默认值
age3 = dict2.get(“wen2”,99)
增删改查
增加
dict2[“hanmeimei”] = 80
删
根据key删除 dict.pop(key) ,并且返回删除的值
name = dict2.pop(“李磊”)
name = dict2.pop(“李磊2”) 如果删除的值不存在,则报错
改
dict2[“tom”] = 80
可以直接以 dict[key] = value的形式就行增加和修改,
如果key已经存在这是修改操作
如果key不存在则是增加操作
查
dict.keys() 获取字典中的所有key
for key in dict2.keys():
获取字典中的所有key
print(key)
获取字典中的所有key和key对应的值
print(key,dict2[key])
dict.values() 获取字典的所有的value
for value in dict2.values():
print(value)
将key - value 一个整体看成一个item
dict.items() 获取字典的一个item
for key,value in dict2.items():
print(key,value)
将字典分解成 index - key的形式
for index,key in enumerate(dict2):
# 获取索引和key,索引从0开始
print(index, key)
##copy
copy重新开辟了一个地址,来把这个字典放进去
dict2 = {"tom":20,"李磊":"30","lilei":40,"wen":100}
dict3 = dict2
dict3["tom"] = 10
print(dict3)
print(dict2)
print(id(dict3))
print(id(dict2))
dict4 = dict2.copy()
print(dict4)
print(dict2)
print(id(dict4))
print(id(dict2))
{'tom': 10, '李磊': '30', 'lilei': 40, 'wen': 100}
{'tom': 10, '李磊': '30', 'lilei': 40, 'wen': 100}
2583976577352
2583976577352
{'tom': 10, '李磊': '30', 'lilei': 40, 'wen': 100}
{'tom': 10, '李磊': '30', 'lilei': 40, 'wen': 100}
2583976577784
2583976577352