个人主页: 会编程的果子君
个人格言:“成为自己未来的主人~”
目录
字典是什么
创建字典
查找key
新增/修改元素
删除元素
遍历字典元素
取出所有的key和value
合成的key类型
编辑
小结
字典是一种存储键值对的结构
啥是键值对?这是计算机/生活中一个非常广泛使用的概念
把键(key)和值(value)进行一个一对一的映射,然后就可以根据键,快速找到值
a={}
b=dict()
print(type(a))
print(type(b))
student={'id':1,'name':'zhangsan'}
print(student)
student={
'id':1,
'name':'zhangsan'
}
student={
'id':1,
'name':'zhangsan',
}
student={
'id':1,
'name':'zhangsan',
}
print('id'in student)
print('score' in student)
student={
'id':1,
'name':'zhangsan',
}
# print('id'in student)
# print('score' in student)
print(student['id'])
print(student['name'])
如果key在字典中不存在,则会抛出异常
student={
'id':1,
'name':'zhangsan',
}
print(student['score'])
使用 [ ] 可以根据 key 来新增/修改value
student={
'id':1,
'name':'zhangsan',
}
student['score']=90
print(student)
如果key已经存在,对取下标操作赋值,即为修改键值对的值
student={
'id':1,
'mame':'zhangsan',
'score':80,
}
student['score']=90
print(student)
student={
'id':1,
'name':'zhangsan',
'score':80,
}
student.pop('score')
print(student)
student={
'id':1,
'name':'zhangsan',
'score':80
}
for key in student:
print(key,student[key])
student={
'id':1,
'name':'zhangsan',
'score':80
}
print(student.keys())
此处的dict_keys是一个特殊的类型,专门用来表示字典的所有key,大部分元组支持的操作对于dict_keys同样适用
student={
'id':1,
'name':'zhangsan',
'score':80
}
print(student.values())
此处的dict_values也是一个特殊的类型,和dict_keys类似
student={
'id':1,
'name':'zhangsan',
'score':80
}
print(student.items())
不是所有的类型都可以作为字典的key
字典本质上是一个哈希表,哈希表的key要求是“可哈希的”,也就是可以计算出一个哈希值
print(hash(1))
print(hash('hello'))
print(hash(True))
print(hash(()))
列表无法计算哈希值
print(hash([1,2,3]))
字典也无法计算哈希值
print(hash({'id':1}))
字典也是一个常用的结构,字典的所有操作都是围绕 key 来展开的,需要表示“键值对映射”这种场景时就可以考虑使用字典