上QQ阅读APP看书,第一时间看更新
5.1 字典的使用
字典数据结构的功能就跟它的名字一样,可以像《汉语字典》一样使用。在使用汉语字典时,我们可以从头到尾一页一页查找某个字,也可以通过拼音索引或笔画索引快速找到某个字,在汉语字典中找拼音索引和笔画索引非常轻松简单。
在Python中对字典进行了构造,让我们可以轻松查到某个特定的键(类似拼音或笔画索引),从而通过键找到对应的值(类似具体某个字)。
假如需要创建一个可以存储学生姓名和学号的小型数据库,应该怎么做呢?我们尝试使用之前学习过的列表实现,例如:
>>> students=['小萌','小智','小强','小张','小李'] >>> numbers=['1001','1002','1003','1004','1005'] >>> print('小智的学号是:',numbers[students.index('小智')]) 小智的学号是: 1002
输出结果是我们想要的,但是当数据量比较大时,显然不适用。数据量比较大时,意味着要对学生姓名列表创建一个有同样多元素的学号列表,一旦列表发生变更,就要将学号列表和学生姓名列表进行逐步比对,以进行相应变更。
我们想要的真正效果是像使用index方法一样,index返回的是索引位置,我们希望直接返回索引位置上的值,比如:
>>> print('小智的学号是:',numbers['小智']) 小智的学号是: 1002
这种方式可以实现,如果numbers是字典,就可以这么操作并得到结果,具体可以查看5.2节的讲解。