字典
我们将学习下列知识: ①如何访问和修改字典中的信息。 ②如何遍历字典中的数据。 ③存储字典的列表。 ④从储列表的字典。 ⑤存储字典的字典。
1.一个简单的字典
alien_0 = {'color': 'green','points': 5}
print(alien_0['color'])
print(alien_0['points'])
运行结果为:
green
5
2.使用字典
在Python中,字典是一系列键—值对。 每个键都与一个值相关联,你可以使用键来访问与之相关联的值。 与键相关联的值可以是数字、字符串、列表乃至字典。 事实上,可将任何Python对象用作字典中的值。 键—值对是两个相关联的值。 指定键时,Python将返回与之相关联的值。 键和值之间用冒号分隔,而键—值对之间用逗号分隔。 在字典中,你想存储多少个键—值对都可以。 例如:
alien_0 = {'color': 'green','points': 5}
2.1访问字典中的值
要获取与键相关联的值,可依次指定字典名和放在方括号内的键,如下所示:
alien_0 = {'color': 'green'}
print(alien_0['color'])
这将返回字典alien_0中与键'color'相关联的值:[
green
字典中可包含任意数量的键—值对。 访问外星人alien_0的颜色和点数,我们用下面的代码实现:
alien_0 = {'color': 'green','points': 5}
new_points = alien_0['points']
print("You just earned " + str(new_points) + "points!")
打印结果为:
You just earned 5points!
2.2添加键-—值对
字典是一种动态结构,可随时在其中添加键—值对。 要添加键—值对,可依次指定字典名、用方括号括起的键和相关联的值。 在字典中添加两项信息:外星人的x坐标和y坐标,可将x坐标设置为0;可将y坐标设置为25,如下所示:
alien_0 = {'color': 'green','points': 5}
print(alien_0)
alien_0['x_position'] = 0
alien_0['y_position'] = 25
print(alien_0)
打印结果为:
{'color': 'green', 'points': 5}
{'color': 'green', 'points': 5, 'x_position': 0, 'y_position': 25}
这个字典的最终包含四个键—值对。 注意,键—值对的排列顺序与添加顺序不同。 Python不关心键—值对的添加顺序,而只关心键和值之间的关联关系。
2.3 先创建一个空字典
可先使用一对空的花括号定义一个字典,再分行添加各个键—值对。 例如:
alien_0 = {}
alien_0['color'] = 'green'
alien_0['points'] = 5
print(alien_0)
打印结果为:
{'color': 'green', 'points': 5}
使用字典来存储用户提供的数据或在编写能自动生成大量键—值对的代码时,通常都需要先定义一个空字典。
2.4修改字典中的值
要修改字典中的值,可依次指定字典名、用方括号括起的键以及与该键相关联的新值。 例如:
alien_0 = {'color': 'green'}
print("The alien is " + alien_0['color'] + '.')
alien_0['color'] = 'yellow'
print("The alien is now " + alien_0['color'] + '.')
输出结果为:
The alien is green.
The alien is now yellow.
2.5删除键-—值对
对于字典中不再需要的信息,可使用del语句将相应的键—值对彻底删除。 使用del语句时,必须指定字典名和要删除的键。 例如:
alien_0 = {'color': 'green','points': 5}
print(alien_0)
del alien_0['points']
print(alien_0)
打印结果为:
{'color': 'green', 'points': 5}
{'color': 'green'}
注意:删除的键—值对永远消失了。
2.6由类似对象组成的字典
确定需要使用多行来定义字典时,在输入左花括号后按回车键,再在下一行缩进四个空格,指定第一个键—值对,并在它后面加上一个逗号。 此后你再次按回车键时,文本编辑器将自动缩进后续键—值对,且缩进量与第一个键—值对相同。 定义好字典后,在最后一个键—值对的下一行添加一个右花括号,并缩进四个空格,使其与字典中的键对齐。 例如,给定被调查者的名字,可使用这个字典轻松地获悉他喜欢的语言:
favorite_languages = {
'zjb': 'python',
'zhang': 'c',
'zhangji': 'ruby',
'zhangjibin': 'java'
}
print("Zhang's favorite language is " + favorite_languages['zhang'].title() + ".")
打印结果为:
Zhang's favorite language is C.