【python】—— 字典
目录
(一)什么是字典
(二)字典的基本操作
2.1 创建字典
2.2 查找 key
2.3 新增/修改元素
2.4 删除元素
2.5 遍历字典元素
2.6 取出所有 key 和 value
(三)合法的 key 类型
(四)小结
(一)什么是字典
Python字典是一种可变、无序且可嵌套的数据类型,用于存储键值对。字典中的每个键(key)都唯一且不可变,它对应一个值(value)。
啥是键值对? 这是计算机/生活中一个非常广泛使用的概念:
举个栗子:
学校的每个同学, 都会有一个唯一的学号. 知道了学号, 就能确定这个同学. 此处 "学号" 就是 "键", 这个 "同学" 就是 "值"
此外字典的创建方式是使用花括号{},并使用冒号将键和值分隔开来。
(二)字典的基本操作
2.1 创建字典
可以通过以下方式创建一个字典:
a = { } # 空字典
b = dict() # 空字典
print(type(a))
print(type(b))
输出结果展示:
student = { 'id': 1, 'name': 'zhangsan' } # 包含两个键值对的字典
print(student)
输出结果展示:
student = {
'id': 1,
'name': 'zhangsan'
}
student=dict(id=1,name='zhangsan') #左侧是键,右侧是值
print(student)
输出结果展示:
t=(10,20,30)
print({t:10}) #t是key,10是value。元祖可以作为字典中的key
输出结果展示:
2.2 查找 key
student = {
'id': 1,
'name': 'zhangsan',
}
print('id' in student)
print('score' in student)
输出结果展示:
student = {
'id': 1,
'name': 'zhangsan',
}
print(student['id'])
print(student['name'])
输出结果展示:
student = {
'id': 1,
'name': 'zhangsan',
}
print(student['score'])
输出结果展示:
2.3 新增/修改元素
使用 [ ] 可以根据 key 来新增/修改 value
student = {
'id': 1,
'name': 'zhangsan',
}
student['score'] = 90 # 添加键为'score',值为'90'的键值对
print(student)
输出结果展示:
student = {
'id': 1,
'name': 'zhangsan',
'score': 80
}
print(student)
student['score'] = 90 # 将score的值修改为90
print(student)
输出结果展示:
2.4 删除元素
student = {
'id': 1,
'name': 'zhangsan',
'score': 80
}
print(student)
student.pop('score') # 删除键为'score'的键值对
print(student)
输出结果展示:
del
语句删除字典中的键值对 student = {
'id': 1,
'name': 'zhangsan',
'score': 80
}
print(student)
del student['score'] # 删除键为'score'的键值对
print(student)
2.5 遍历字典元素
直接使用 for 循环能够获取到字典中的所有的 key, 进一步的就可以取出每个值了
student = {
'id': 1,
'name': 'zhangsan',
'score': 80
}
# 遍历所有键
for key in student:
print(key)
# 遍历所有值
for value in student.values():
print(value)
# 遍历所有键值对
for key, value in student.items():
print(f'{key}: {value}')
2.6 取出所有 key 和 value
student = {
'id': 1,
'name': 'zhangsan',
'score': 80
}
print(student.keys())
输出结果展示:
student = {
'id': 1,
'name': 'zhangsan',
'score': 80
}
print(student.values())
输出结果展示:
student = {
'id': 1,
'name': 'zhangsan',
'score': 80
}
print(student.items())
输出结果展示:
(三)合法的 key 类型
首先不是所有的类型都可以作为字典的 key. 字典本质上是一个 哈希表, 哈希表的 key 要求是 "可哈希的", 也就是可以计算出一个哈希值
(四)小结
字典也是一个常用的结构. 字典的所有操作都是围绕 key 来展开的.需要表示 "键值对映射" 这种场景时就可以考虑使用字典.
作者:起飞的风筝