字典的常用操作-增删改查(字典的增删改查和常用方法)
字典的语法与特点:
- 字典的符号为大括号{}
- 数据为键值对形式出现
- 各个键值对之间用逗号隔开
创建字典
# 创建有数据的字典
dict1 = {'name': 'TIM', 'age': 25, 'gender': '男'}
print(dict1) # 输出:{'name': 'TIM', 'age': 25, 'gender': '男'}
# 创建空字典
dict2 = {}
dict3 = dict()
print(dict2) # 输出{}
print(dict3) # 输出{}
注意:一般冒号前面的为键(key),简称k,冒号后面的为值(value),简称v.
增加数据
语法:字典序列[key] = 值
注意:字典为可变类型。如果key存在,则修改这个key对应的值;如果key不存在,则新增此键值对。
dict1 = {'name': 'TIM', 'age': 25, 'gender': '男'}
print(dict1) # 输出:{'name': 'TIM', 'age': 25, 'gender': '男'}
dict1['age'] = 28
print(dict1) # 输出:{'name': 'TIM', 'age': 28, 'gender': '男'}
dict1['ID'] = 666888
print(dict1) # 输出:{'name': 'TIM', 'age': 28, 'gender': '男', 'ID': 666888}
删除数据
- del (字典序列) 或del 字典序列[key],可以删除字典或者字典中指定的键值对。
dict1 = {'name': 'TIM', 'age': 25, 'gender': '男'}
del dict1 # 删除字典,或使用del (dict1)
print(dict1) # 报错!字典不存在。
dict2 = {'name': 'TIM', 'age': 25, 'gender': '男'}
del dict2['age'] # 删除字典中的键值对
print(dict2) # 输出:{'name': 'TIM', 'gender': '男'}
- 字典序列.clear(): 清空列表
dict1 = {'name': 'TIM', 'age': 25, 'gender': '男'}
dict1.clear()
print(dict1) # 输出空字典{}
修改数据
语法:字典序列[key] = 值
注意:字典为可变类型。如果key存在,则修改这个key对应的值;如果key不存在,则新增此键值对。
dict1 = {'name': 'TIM', 'age': 25, 'gender': '男'}
print(dict1) # 输出:{'name': 'TIM', 'age': 25, 'gender': '男'}
dict1['age'] = 28
print(dict1) # 输出:{'name': 'TIM', 'age': 28, 'gender': '男'}
dict1['ID'] = 666888
print(dict1) # 输出:{'name': 'TIM', 'age': 28, 'gender': '男', 'ID': 666888}
查找数据
- key值查找
语法:字典序列[key]
如果当前查找的key存在,则返回对应的值,否则会报错。
dict1 = {'name': 'TIM', 'age': 25, 'gender': '男'}
print(dict1['name']) # 输出TIM
print(dict1['ID']) # 报错!
- get()查找
如果当前查找的key
语法:字典序列.get(key, 默认值)
注意:如果当前查找的key不能存在,则返回第二个参数(默认值),则省略第二个参数,则返回None.
dict1 = {'name': 'TIM', 'age': 25, 'gender': '男'}
print(dict1.get('name')) # TIM
print(dict1.get('ID', 888)) # 888
print(dict1.get('ID')) # None
- keys()
查询字典的键有哪些。
dict1 = {'name': 'TIM', 'age': 25, 'gender': '男'}
print(dict1.keys()) # 输出字典的键:dict_keys(['name', 'age', 'gender'])
- items
查询字典的键值对。
dict1 = {'name': 'TIM', 'age': 25, 'gender': '男'}
print(dict1.items()) # 输出字典的键值对:dict_items([('name', 'TIM'), ('age', 25), ('gender', '男')])