下面来介绍字典,学会本部分内容后,你将可以对各种现实中的物体建模,可以创建一个表示人的字典,在其中存储信息。还可以做很多很多事情,有待你来挖掘。
一、介绍什么是字典
字典是Python中的一种数据类型,用于存储键值对(key-value)的无序集合。
字典是通过花括号{ }来创建的,每个键值对由冒号(:)分隔,键与值之间用逗号(,)分隔。
直接上例子来帮助理解:
names = {'first_name':'Zhang','last_name':'Ming','gender':'women'}
print (f"{names['first_name']} {names['last_name']}")
print (names['gender'])
print (names)
这里我们定义了一个字典names,其中包含first_name,last_name,gender三个键以及对应的值。在print语句中调取字典中的值时,采用字典名[键]的格式。
输出结果如下:
Zhang Ming
women
{'first_name':'Zhang','last_name':'Ming','gender':'women'}
二、介绍常用操作
1.创建字典
允许创建空字典,代码如下:
names={}
2.访问键值对
前两个内容都在上一部分讲过了,格式类似,不再赘述。
3.添加键值对
……
names['age'=18]
print(names)
(省略号代表省略上一段代码)
输出结果如下(略去前面的):
{'first_name':'Zhang','last_name':'Ming','gender':'women','age':18}
由此可见,Python字典是一种动态结构,可以随时在其中添加键值对。每次调用字典中的值,Python会自动从头至尾搜索一遍相应的键, 若没有对应的键则会在末尾添加上。
4.修改键对应的值
直接用新值覆盖即可,代码如下:
……
names['age'=19]
键'age'中的值就被修改为19了。
5.删除键值对
用del语句可以删除键值对。例如:
names = {'first_name':'Zhang','last_name':'Ming','gender':'women'}
print (names)
del names['gender']
print (names)
6.使用get()方法访问值
例如,在删除键‘gender’后,我们要继续访问gender就有可能报错。而get提供了在键不存在时的处理方法。
……
print_value = names.get('gender','No gender value assigned')
这段代码的作用是:检验字典中是否有键名为‘gender’,如有,获得对应的值;如果没有,则按照我们给出的方式打印‘No gender value assigned’。
如果去掉 ‘No gender value assigned’,例如下面这段代码:
……
print_value = names.get('gender')
则默认用‘None’作为未读到键时的输出。
7.一些其他的注意项:
要注意:
1.字典中的键必须是唯一的,而值可以重复。如果重复最后的一个键值对会替换前面的。例如:
tinydict = {'a': 1, 'b': 2, 'b': '3'}
tinydict['b']
输出结果为3。