python中字典的使用
字典:指在python中使用花括号括起来,数值以键值对的形式出现,各个键值对之间以逗号隔开的序列。
1、字典数据的增加与修改
字典数据的增加与修改是通过键值对进行修改,即通过key修改value。注意:如果键值对存在,则修改值的内容,如果不存在,则创建新的键值对。
语法:
字典序列[key值] = value值
在python中的应用:
# 字典的创建
name_age_dict = {'张珊': 18, '李四': 20, '王五': 16}
# 打印输出
# 输出原字典
print(f'name_age_dict = {name_age_dict}')
# 修改字典中值的内容
name_age_dict['李四'] = 21
# 创建新的键值对
name_age_dict['张三'] = 19
# 输出修改与增加键值对后的字典
print(f'name_age_dict = {name_age_dict}')
运行之后的结果:
name_age_dict = {'张珊': 18, '李四': 20, '王五': 16}
name_age_dict = {'张珊': 18, '李四': 21, '王五': 16, '张三': 19}
2、字典的删除操作
字典的删除操作是指删除字典中指定的键值对或者清空字典。方法有del方法和clear方法。其中del方法用于删除字典的键值对,clear方法用于清空字典。注意:当使用del方法时,如果没有指定键值对,那么会将字典全部删除。del方法与clear方法删除字典的区别是使用del方法删除字典,执行操作后字典将不存在,使用clear方法删除字典,会有一个空的字典。
语法:
# del方法
# 删除指定键值对
del 字典名称[key值]
# 删除字典
del 字典名称
# clear方法
字典名称.clear()
在python中的应用:
# 字典的创建
name_age_dict = {'张珊': 18, '李四': 20, '王五': 16}
# 输出原字典
print(f'name_age_dict = {name_age_dict}')
# 使用del删除键值对
del name_age_dict['张珊']
# 输出删除后的结果
print('name_age_dict删除键值对后的结果:' + str(name_age_dict))
# 使用clear方法清空字典
name_age_dict.clear()
# 输出清空后的字典
print(f'清空后的name_age_dict:{name_age_dict}')
# 使用del删除整个字典
# del name_age_dict
运行之后的结果:
name_age_dict = {'张珊': 18, '李四': 20, '王五': 16}
name_age_dict删除键值对后的结果:{'李四': 20, '王五': 16}
清空后的name_age_dict:{}
3、字典的查找操作
3.1、通过key值查找value值
字典可以通过key值查找到value值,注意:如果查找value值时如果key值不存在,则会报错。
语法:
value = 字典名称[key]
在python中的应用:
# 字典的创建
name_age_dict = {'张珊': 18, '李四': 20, '王五': 16}
# 输出原字典
print(f'name_age_dict = {name_age_dict}')
# 通过key值查找value
age1 = name_age_dict['张珊']
# 输出查找后的结果
print(f'使用key查找age1 = {age1}')
运行之后的结果:
name_age_dict = {'张珊': 18, '李四': 20, '王五': 16}
age1 = 18
3.2、通过get方法查找value值
通过在get方法中输入key值查找value值,如果key值不存在,则返回第二个参数的值。注意:第二个参数可以不填写,如果第二个参数没有填写,并且可以值不存在,则返回None。
语法:
value = 字典名称.get(key, 查找不到时返回的值(默认为None))
在python中的应用:
# 字典的创建
name_age_dict = {'张珊': 18, '李四': 20, '王五': 16}
# 输出原字典
print(f'name_age_dict = {name_age_dict}')
# 使用get方法查找
# key存在于字典中
age2 = name_age_dict.get('李四') # 只有一个参数
# key不存在于字典中
age3 = name_age_dict.get('李') # 只有一个参数
age4 = name_age_dict.get('李', '您查找的数据不存在') # 有俩个参数
# 输出结果
print(f'age2 = {age2}')
print(f'age3 = {age3}')
print(f'age4 = {age4}')
运行之后的结果:
name_age_dict = {'张珊': 18, '李四': 20, '王五': 16}
age2 = 20
age3 = None
age4 = 您查找的数据不存在
3.3、keys()方法
通过keys()方法可以查找字典中所有的key值。
语法:
keys = 字典名称.keys()
在python中的应用:
# 字典的创建
name_age_dict = {'张珊': 18, '李四': 20, '王五': 16}
# 输出原字典
print(f'name_age_dict = {name_age_dict}')
# key方法的使用
keys = name_age_dict.keys()
# 输出所有的key值
print(f'keys = {keys}')
运行之后的结果:
name_age_dict = {'张珊': 18, '李四': 20, '王五': 16}
keys = dict_keys(['张珊', '李四', '王五'])
3.4、values()方法
通过values()方法可以获取所有的value值。
语法:
values = 字典名称.values()
在python中的应用:
# 字典的创建
name_age_dict = {'张珊': 18, '李四': 20, '王五': 16}
# 输出原字典
print(f'name_age_dict = {name_age_dict}')
# value方法的使用
values = name_age_dict.values()
# 输出所有value值
print(f'values = {values}')
运行之后的结果:
name_age_dict = {'张珊': 18, '李四': 20, '王五': 16}
values = dict_values([18, 20, 16])
2.5、items方法
通过items方法输出所有的键值对。
语法:
items = 字典名称.items()
在python中的应用:
# 字典的创建
name_age_dict = {'张珊': 18, '李四': 20, '王五': 16}
# 输出原字典
print(f'name_age_dict = {name_age_dict}')
# items方法的使用
items = name_age_dict.items()
# 输出所有键值对
print(f'items = {items}')
运行之后的结果:
name_age_dict = {'张珊': 18, '李四': 20, '王五': 16}
items = dict_items([('张珊', 18), ('李四', 20), ('王五', 16)])