python中的字典
目录
初识字典
字典的常用操作
增加元素
直接增加
删除元素
直接删除
函数pop()
函数clear()
修改元素
直接修改
查找元素
直接查找
函数keys()
函数values()
函数items()
初识字典
能够一次性存储多个数据或多个不同的数据类型,但数据之间必须是具有一一对应关系的键值对。
语法结构:
字典名={'key1':'value1','key2','value2','key3','value3',......}
my_dict = {} #这是一个空字典 student = {'name':'Tom''age':17'class':3 }
字典的常用操作
你,一名准实习勇者,虽然还未正式踏入冒险之路,却从未懈怠每日的修行。黎明破晓,你已背起木剑,踏上山林小道,挥剑斩风、奔跑越野、采集草药,只为锻炼更强健的体魄与更坚定的意志。午后,你会聆听老猎人讲述战斗技巧,与铁匠练习武器的使用与维护。夜晚,在微光中默背魔法口诀,沉思战术布阵。你相信,真正的试炼即将到来,而你,将不辱“勇者”之名。
增加元素
直接增加
通过key键在字典中增加对应的value值。
语法结构:
字典名[key]=value
例如,你在冒险者公会报名时填下了你的相关信息:
{'姓名':'勇者','职业':'勇者','等级':1,'种族':'人类'}
现在,你想在注册名单上填写自己的性别一栏。
your_info = {'姓名':'勇者','职业':'勇者','等级':1,'种族':'人类'} your_info['性别'] = '男' print(your_info)
对代码进行运行测试:
删除元素
直接删除
第一种:通过key键在字典中进行键值对的删除。
语法结构A:
del 字典名[key]
例如,你在冒险者公会的注册名单上不小心填写了一个私密信息,想要只把这一个填错的信息删除掉,你填写的信息如下:
{'姓名':'勇者','职业':'勇者','等级':1,'种族':'人类','性别':'男','家乡':'M78'}
你想把自己的家乡从注册名单上删除,此时可以使用key键直接删除相应的value值。
register_paper = {'姓名':'勇者','职业':'勇者','等级':1,'种族':'人类','性别':'男','家乡':'M78'} del register_paper['家乡'] print(register_paper)
对代码进行运行测试:
第二种:直接删除整个字典包括其本身。
语法结构B:
del 字典名
例如,你为了防止填写错误,在冒险者公会的注册系统中保存了一份名单副本,但现在上面的信息已经失效,你想要把它彻底删除。名单副本如下:
{'姓名':'勇者','职业':'仙女','等级':1,'种族':'哥布林','性别':'男','家乡':'M78'}
你可以通过关键字del以及字典名称直接将整个名单彻底删除掉。
register_other = {'姓名':'勇者','职业':'仙女','等级':1,'种族':'哥布林','性别':'男','家乡':'M78'} del register_other print(register_other)
对代码进行运行测试:
由name 'register_other' is not defined可知,名单副本已经删干净了。
函数pop()
pop()函数需要通过key键才能对字典中的键值对进行删除,其返回值为key键相对应的value值。
语法结构:
字典名.pop(key)
例如,冒险者公会提供了一种查看历史的功能,可以记录你最近一次删除操作所删除的内容。你是一位记性不太好的勇者,往往需要依靠这份记录来判断下一步操作。你的注册信息如下:
{'姓名':'勇者','职业':'勇者','等级':1,'种族':'人类','性别':'男'}
你现在打算删除自己的性别信息,如果删除后的返回记录为'男',你就会去查看自己的种族信息,否则你会去查看自己的姓名信息。
register_info = {'姓名':'勇者','职业':'勇者','等级':1,'种族':'人类','性别':'男'} del_info = register_info.pop('性别') if del_info == '男':print(f"你的种族是{register_info['种族']}") else:print(f"你的姓名是{register_info['姓名']}")
对代码进行运行测试:
函数clear()
clear()函数会直接将字典中的所有键值对(即keys和values)全部清空。与del不同的是,clear只删除字典中的元素,不删除字典本身。
语法结构:
字典名.clear()
例如,你想要对注册名单上的所有信息进行重新填写,需要把之前填过的信息清空,目前你的信息如下:
{'姓名':'勇者','职业':'勇者','等级':1,'种族':'人类''}
你可以通过clear()对名单进行一键清空。
register_info = {'姓名':'勇者','职业':'勇者','等级':1,'种族':'人类'} register_info.clear() print(register_info)
对代码进行运行测试:
修改元素
直接修改
直接通过key键将相对应的value值用新值覆盖。
语法结构:
字典名[key]=新值
例如,你在冒险者公会的相关信息:
{'姓名':'勇者','职业':'勇者','等级':1,'种族':'人类','性别':'男'}
现在,你想修改自己当前在注册名单上的姓名。
register_info = {'姓名':'勇者','职业':'勇者','等级':1,'种族':'人类'} register_info['姓名'] = '小小勇者' print(register_info)
对代码进行运行测试:
查找元素
直接查找
直接通过key键查找相对应的value值。
语法结构:
字典名[key]
例如,你在冒险者公会的注册名单填下了你的相关信息:
{'姓名':'勇者','职业':'勇者','等级':1,'种族':'人类','性别':'男'}
现在,你想查看自己当前在冒险者公会的职业和等级,可以通过字典中的key键直接查找对应的value值。
your_info = {'姓名':'勇者','职业':'勇者','等级':1,'种族':'人类','性别':'男'} your_profession = your_info['职业'] your_grade = your_info['等级'] print(f"你的职业是{your_profession},当前等级为{your_grade}")
对代码进行运行测试:
函数keys()
能够查看所有的key元素,返回值的数据类型是dict_keys。
例如,你在冒险者公会的相关信息:
{'姓名':'勇者','职业':'勇者','等级':1,'种族':'人类','性别':'男'}
现在,你想查看自己当前在冒险者公会填下的所有的类型名称。
register_info = {'姓名':'勇者','职业':'勇者','等级':1,'种族':'人类'} print(register_info.keys())
对代码进行运行测试:
函数values()
能够查看所有的value元素,返回值的数据类型是dict_values。
例如,你在冒险者公会的相关信息:
{'姓名':'勇者','职业':'勇者','等级':1,'种族':'人类','性别':'男'}
现在,你想查看自己当前在冒险者公会填下的所有的信息。
register_info = {'姓名':'勇者','职业':'勇者','等级':1,'种族':'人类'} print(register_info.values())
对代码进行运行测试:
函数items()
能够查看所有的key元素及其匹对的value元素,返回值的数据类型是dict_items。
例如,你在冒险者公会的相关信息:
{'姓名':'勇者','职业':'勇者','等级':1,'种族':'人类','性别':'男'}
现在,你想查看自己当前在冒险者公会填下的信息有没有填对相应的类型名称。
register_info = {'姓名':'勇者','职业':'勇者','等级':1,'种族':'人类'} print(register_info.items())
对代码进行运行测试: