为什么使用字典
通过【字】 就能找到对应的【含义】
所以,我们可以认为,生活中的字典就是记录的一堆: 【字】:【含义】 【字】:【含义】 ......
Python中字典和生活中字典十分相像:
Key: Value
Key: Value
可以按【Key】找出对应的【Value】
老师有一份名单,记录了学生的姓名和考试总成绩。
现在需要将其通过Python录入至程序中,并可以通过学生姓名检索学生的成绩。
使用字典最为合适:
可以通过Key(学生姓名),取到对应的Value(考试成绩)
所以,为什么使用字典? 因为可以使用字典,实现用key取出Value的操作
字典的定义
字典的定义,同样使用{},不过存储的元素是一个个的:键值对,如下语法:
使用{}存储原始,每一个元素是一个键值对
每一个键值对包含Key和Value(用冒号分隔)
键值对之间使用逗号分隔 Key和Value可以是任意类型的数据(key不可为字典)
Key不可重复,重复会对原有数据覆盖
前文中记录学生成绩的需求,可以如下记录:
字典数据的获取
字典同集合一样,不可以使用下标索引
但是字典可以通过Key值来取得对应的Value
字典的嵌套
字典的Key和Value可以是任意数据类型(Key不可为字典)
那么,就表明,字典是可以嵌套的
需求如下:记录学生各科的考试信息
嵌套字典的内容获取,如下所示:
字典的注意事项
键值对的Key和Value可以是任意类型(Key不可为字典)
字典内Key不允许重复,重复添加等同于覆盖原有数据
字典不可用下标索引,而是通过Key检索Value
字典的常用操作
新增元素
语法:字典[Key] = Value,结果:字典被修改,新增了元素
更新元素
语法:字典[Key] = Value,结果:字典被修改,元素被更新
注意:字典Key不可以重复,所以对已存在的Key执行上述操作,就是更新Value值
删除元素
语法:字典.pop(Key),结果:获得指定Key的Value,同时字典被修改,指定Key的数据被删除
清空字典
语法:字典.clear(),结果:字典被修改,元素被清空
获取全部的key
语法:字典.keys(),结果:得到字典中的全部Key
遍历字典
语法:for key in 字典.keys()
注意:字典不支持下标索引,所以同样不可以用while循环遍历
计算字典内的全部元素(键值对)数量
语法:len(字典) 结果:得到一个整数,表示字典内元素(键值对)的数量
经过上述对字典的学习,可以总结出字典有如下特点:
可以容纳多个数据
可以容纳不同类型的数据
每一份数据是KeyValue键值对
可以通过Key获取到Value,Key不可重复(重复会覆盖)
不支持下标索引
可以修改(增加或删除更新元素等)
支持for循环,不支持while循环