导语:今天学习下字典!
一、字典的定义与创建
字典(Dictionary)是一种可变容器模型,它可以存储任意类型对象,如字符串、数字、列表等。字典的每个元素由一个键(Key)和一个值(Value)组成,键必须是唯一的,而值则可以是任何数据类型。
- 创建字典
(1)使用花括号 {}
dict1 = {}
print(type(dict1)) # 输出:<class 'dict'>
(2)使用键值对初始化
dict2 = {'a': 100, 'b': 200, 'c': 300}
二、字典的基本操作
- 访问字典中的值
通过键来访问字典中的值,可以使用方括号 [] 或 get() 方法。
print(dict2['a']) # 输出:100
print(dict2.get('b')) # 输出:200
- 字典的增删改查
(1)新增:为字典添加新的键值对
dict4['d'] = 400
print(dict4) # 输出:{'a': 100, 'b': 200, 'c': 300, 'd': 400}
(2)修改:修改字典中的值
dict4['a'] = 1000
print(dict4) # 输出:{'a': 1000, 'b': 200, 'c': 300, 'd': 400}
(3)批量修改新增:使用 update() 方法
dict4.update({'a': 1000, 'e': 500})
print("批量修改新增后的值{}".format(dict4)) # 输出:{'a': 1000, 'b': 200, 'c': 300, 'd': 400, 'e': 500}
(4)删除:通过键删除字典中的元素
dict4.pop('a')
print(dict4) # 输出:{'b': 200, 'c': 300, 'd': 400, 'e': 500}
(5)使用 del 关键字删除键值对:
del dict4['b']
print(dict4) # 输出:{'c': 300, 'd': 400, 'e': 500}
(6)清空字典:
dict8.clear()
print("清空后的字典为{}".format(dict8)) # 输出:{}
(7)或重新赋值为空字典:
dict9 = {}
print("清空后的字典为{}".format(dict9)) # 输出:{}
- 字典的遍历
使用 for 循环遍历字典的键值对:
dict5 = {'a': 100, 'b': 200, 'c': 300}
# 遍历字典的键值对
for k, v in dict5.items():
print(k, v) # 打印键和值
# 通过键直接访问值
print(dict5[k]) # 这与上面的打印效果相同
# 使用 get() 方法访问值,如果键不存在,则返回 None
print(dict5.get(k)) # 这同样会打印出对应的值
# 使用 get() 方法访问值,如果键不存在,则返回默认值 1000
print(dict5.get(k, 1000)) # 由于键存在,这里也会打印出对应的值
# setdefault() 方法会返回键对应的值,如果键不存在,则添加键值对,并返回默认值
# 在这个例子中,由于键已经存在,所以不会改变字典内容,只会打印出对应的值
print(dict5.setdefault(k, 1000))
三、字典的常用方法
- keys():返回字典中的所有键
- values():返回字典中的所有值
- items():返回字典中的所有键值对
- get():根据键获取值,如果键不存在,返回默认值
- pop():删除指定键的键值对,并返回值
- popitem():随机删除一个键值对,并返回该键值对
dict6 = {'a': 100, 'b': 200, 'c': 300} # 打印字典的所有键 print(dict6.keys()) # 输出:dict_keys(['a', 'b', 'c']) # 打印字典的所有值 print(dict6.values()) # 输出:dict_values([100, 200, 300]) # 打印字典的所有键值对 print(dict6.items()) # 输出:dict_items([('a', 100), ('b', 200), ('c', 300)]) # 使用 get() 获取指定键的值 print(dict6.get('a')) # 输出:100 print(dict6.get('b')) # 输出:200 dict7 = {'a': 100, 'b': 200, 'c': 300} # 使用 pop() 删除指定键的键值对,并返回值 print(dict7.pop('a')) # 输出:100 print(dict7) # 输出:{'b': 200, 'c': 300} # 使用 popitem() 删除字典中的一个键值对,并返回该键值对 print(dict7.popitem()) # 输出:('c', 300) print(dict7) # 输出:{'b': 200}
四、总结
下次见,拜拜~