Python中的字典和生活中的目录功能相似,当我们读一本书时,可根据目录中的题目,快速定位到页码。而Python中的字典由key和value组成,可通过key直接得到value。
比如要存储各年级的人数信息,可用字典来表示:{“1班”:35,“2班”: 36, “3班”:37}。当我们想知道某个班级的人数时,可直接输入班级,获得对应的人数。
字典的创建
可以直接通过花括号{} 创建字典,如下所示(逗号为半角,即英文输入法下输入的逗号 ): a = {"1班":35, “2班”: 36, "3班":37}
也可以创建空字典,不存任何数据,如下所示; b ={}
字典的访问
通过输入具体的key, 得到value, 比如要访问a 中存储的1班的人数,如下所示: a["1班"]
实践1:创建字典a,存储1-3班的人数,其中1班100人,2班101人,3班112人,并依次打印各班人数 提示1:创建字典 a = {"1班":100, “2班”: 101, "3班":112} 提示2:打印1班人数, print(a[“1班”]) 提示2:依次验证打印的三个班级人数是否为100,101,112
当访问的key在字典中不存在时,比如访问字典中不存在的“4班”,程序会报错,如下所示: 因此,我们在访问字典时,如果不确定字典中是否存在key,可以用get方法:当存在key则返回对应的value, 否则返回默认值(此例中设置为0,可按自己需求来设置 )。
实践2:针对实践1中创建的字典a,通过get方法,打印“1班”人数 和 “5班”人数,如果不存在,则打印-1 提示1:print(a.get("1班", -1)) 提示2:print(a.get("5班", -1))
字典添加元素
可通过如下方式在字典中添加元素。如在字典a中添加4班人数的记录: a[“4班”] = 150
字典修改元素
修改元素的方式和添加元素相同,如修改字典a中1班人数: a[“1班”] = 200
实践3:针对实践1中创建的字典a:增加4班人数记录200;修改1班人数为300,打印“1班”人数、“2班”人数 和 “4班”人数 提示1:a["4班"]=200, a["1班"]=300 提示2:print(a["1班"]), print(a["2班"]), print(a["4班"]) 提示3:验证是否符合预期,1班最新人数为 300, 2班不变101,4班人数200
字典删除元素
删除一条记录,可通过pop(key)方法。如在字典a中删除3班的记录: a.pop("3班") 删除字典中所有记录,可通过clear方法,如删除a中所有记录: a.clear()
实践4:针对实践3中的字典a,依次执行如下操作:打印字典;删除4班人数并打印字典;删除所有记录并打印字典 提示1:打印字典 print(a) 提示2:删除4班人数并打印字典, a.pop("4班") , print(a) 提示3:删除所有记录并打印字典,a.clear(),print(a) 对比三个步骤打印的字典,验证删除后的效果是否符合预期:对应元素是否被成功删除?
需要注意的是,字典不能使用+ 或* 来进行操作(虽然列表和元组都可以),大家可思考下为什么? 小提示: 字典中要求每个key最多对应一条记录(这样才能保证根据key查到的value也是唯一的),如果像列表或元组那样,允许这两种操作,会导致key不唯一 。
|