第9课 字典

一、什么是字典(Dictionary)

大家回想一下,使用《新华字典》查找生字的过程,通常有两种方式:一种是根据读音查找,另一种是根据偏旁部首查找。无论哪一种,都有一个共同的特点:根据关键信息,查找目标内容。

Python将关键信息简化成"键(key)",将目标内容简化成"值(value)",键和值是一一对应的,这种通过键值对存储数据的模型,就是字典(Dictionary)。

字典的具体表现形式如下:字典变量 = {key1: value1, key2: value2}。每一组键值对键和值使用冒号(:)分隔,每组键值对之间,使用逗号(,)分割,用大括号{}将所有的键值对括起来。

重点注意:

(1)键是字典操作数据的重要凭证,所以,键必须是唯一的,且数据类型是不可变的。理论上,可哈希(hash)的数据类型都可以作为key。

(2)字典不是序列,所以没有顺序,也没有索引。

二、字典的创建(声明)

1、直接创建。按照字典的格式书写即可。

2、用dict()方法创建字典。这里只需掌握使用关键字存储字典信息。

三、字典的操作

1、元素访问:

字典中的每一组键值对就是字典的一个元素,常见的访问方式如下:

(1)使用键(key)直接访问。

操作方法如下:字典变量名[键],当键不存在时,报错KeyError。

(2)使用字典的get()方法访问。

操作方法如下:字典变量名.get(键),当键不存在时,返回空值。

2、元素的修改与添加:

在直接使用key访问的基础上,赋值即可。

操作方法:字典变量名[key] = value,如果key存在,将key对应的值更新成value;如果key不存在,就添加一个键为key,值为value的元素。

3、元素删除:

(1)使用del命令删除元素。

操作方法:del 字典变量名[key],如果key不存在,会报错。

(2)使用字典的pop()方法删除元素。

操作方法:字典变量名.pop(key[, d]),删除key对应的元素,当key不存在的时候,如果设定了默认值d,就会返回默认值,否则会报错。

4、清空字典和删除字典:

使用字典的clear()方法可以清空字典,使用del命令可以删除整个字典。

清空字典是指删除字典里的所有元素,变成空字典;删除字典不仅会删除字典里所有的元素,字典本身也会删除,什么都不剩下。

5、获取字典的长度:

使用len()方法可以获取字典的长度。操作方法与列表一样。

6、使用in检查键是否在字典中:

默认检查的key是否存在字典中,可以使用字典的keys()方法获取字典的key列表。

同样的,如果想查看字典所有的value列表,可以使用字典的values()方法,获取到字典的values列表,就能判断某个值是否存在字典的值中。

四、模拟考题

1、下面代码的输出结果是( )。

python 复制代码
a = {'数学': 90, '语文': 93, '英语': 89, '科学': 98}
print(a['数学'])

A. 93

B. 89

C. 90

D. 98

2、下面代码的输出结果为( )。

python 复制代码
score = {'语文': 95, '数学': 93, '英语': 97}
print(score['语文'] + score['数学']//2)

A. 141

B. 141.5

C. 94

D. 94.0

3、以下程序的运行结果是( )。

python 复制代码
a = {'name': '张三', 'age': 12, 'class': 3}
a['age'] = 15
a['school'] = '沛县中学'
print('age:', a['age'])
print('school:', a['school'])

A. age: 29

school: 沛县中学

B. age: 15

C. age: 15

school: 沛县中学

D. school: 沛县中学

-->参考答案往下翻<--

-->参考答案<--

1~3:BAC

相关推荐
databook9 小时前
Manim实现闪光轨迹特效
后端·python·动效
Juchecar10 小时前
解惑:NumPy 中 ndarray.ndim 到底是什么?
python
用户83562907805111 小时前
Python 删除 Excel 工作表中的空白行列
后端·python
Json_11 小时前
使用python-fastApi框架开发一个学校宿舍管理系统-前后端分离项目
后端·python·fastapi
数据智能老司机17 小时前
精通 Python 设计模式——分布式系统模式
python·设计模式·架构
数据智能老司机18 小时前
精通 Python 设计模式——并发与异步模式
python·设计模式·编程语言
数据智能老司机18 小时前
精通 Python 设计模式——测试模式
python·设计模式·架构
数据智能老司机18 小时前
精通 Python 设计模式——性能模式
python·设计模式·架构
c8i19 小时前
drf初步梳理
python·django
每日AI新事件19 小时前
python的异步函数
python