此文章为Python基础知识点(从入门到实践)-- 字典,此节Python基础知识点主要包括:字典、使用字典(创建、访问、修改、删除)、遍历字典、嵌套。
目录
一、字典
1.1 字典
在python中,字典是一系列键值对。每个值都与一个值相关联,可使用键来访问相关联的值。与键相关联的值可以是数、字符串、列表乃至字典,可将任何python对象用作字典中的值。
在python中,字典用放在花括号({})中的一系列键值表示。例子如下:
dog_0 = {'color' : 'black' , 'age' : 4}
键值对是两个相关联的值。指定键时,python将返回与之相关联的值。键和值之间用冒号分隔,而键值之间用逗号分隔。在字典中,想存储多少个键值对都可以。最简单的字典只有一个键值对。
1.2 访问字典中的值
要获取与键相关联的值,可依次指定字典名和放在方括号内的键。例子如下:
dogs_0 = {'color': 'black' , 'age' : 4}
print(dogs_0['color'])
输出结果如下:将返回字典dogs_0中与键“color”相关联的值。
1.3 添加键值对
字典是一种动态结构,可随时在其中添加键值对。要添加键值对,可依此指定字典名、用方括号括起的键和相关联的值。例子如下:
dog_0 = {'color': 'black' , 'age' : 4}
print(dog_0)
dog_0['name'] = 'lili'
dog_0['weight'] = 16
print(dog_0)
输出结果如下:
1.4 修改字典中的值
要修改字典中的值,可依次指定字典名、用方括号括起的键,以及与该键相关联的新值。例子如下:
dog_0 = {'color': 'black' , 'age' : 4}
print(dog_0)
dog_0['color'] = 'white'
print(dog_0)
输出结果如下:
1.5 删除键值对
可使用 del 语句将相应的键值对彻底删除,必须指定字典名和要删除的键。例子如下:
dog_0 = {'color': 'black' , 'age' : 4}
print(dog_0)
del dog_0['age']
print(dog_0)
输出结果如下:
1.6 由类似对象组成的字典
在前面示例中,字典储存的是一个对象的多种信息,但字典也可以来存储众多对象的同一种信息。例子如下:
dog_color = {
'lili': 'black' ,
'haha' : 'white',
'uu' : 'zizi' ,
}
color = dog_color['haha']
print(f'Haha is {color}.')
输出结果如下:
1.7 使用 get()来访问值
使用放在方括号内的键从字典中获取感兴趣的值时,可能会引发错误:如果指定的键不存在就会出错。就字典而言可使用方法get()在指定的键不存在时返回一个默认值,避免错误。
方法get()的第一个参数用于指定键,是必不可少的;第二个参数为指定的键不存在时要返回的值,是可选的。例子如下:
dog_0 = {'color': 'black' , 'age' : 4}
weight = dog_0.get('weight','No weight value assigned.')
print(weight)
输出结果如下:
如果指定的键可能不存在,应考虑使用方法get(),而不是使用方括号表示法。
二、遍历字典
2.1 遍历所有键值对
可使用for循环来遍历字典,可声明两个变量,用于存储键值对中的键和值,两个变量可以是任意名称。for 语句第二部分包含字典名和方法 items(),他返回一个键值对列表。例子如下:
dog_0 = {'color': 'black' ,
'age' : 4,
'weight' : 16,
}
for k,v in dog_0.items():
print(f'\nK:{k}')
print(f'v:{v}')
输出结果如下:
2.2 遍历字典中的所有键
遍历字典中所有键,使用方法keys()。例子如下:
dog_0 = {'color': 'black' ,
'age' : 4,
'weight' : 16,
}
for information in dog_0.keys():
print(information)
输出结果如下:
2.3 按特定顺序遍历字典中的所有键
要以特定顺序返回元素,一种办法是在for循环中对返回的值进行排序。下面例子使用函数sort()来获取按特定顺序排列的键列表的副本。例子如下:
dog_0 = {'color': 'black' ,
'age' : 4,
'weight' : 16,
}
for information in sorted(dog_0.keys()):
print(information.title())
输出结果如下:
2.4 遍历字典中 的所有值
可使用方法values()来返回一个值列表,不包含任何键。例子如下:
dog_0 = {'color': 'black' ,
'age' : 4,
'weight' : 16,
}
for information in dog_0.values():
print(information)
输出结果如下:
三、嵌套
嵌套:将一系列字典存储在列表中,或将列表作为值存储在字典中。
3.1 在列表中存储字典
可将字典存储在列表中。例子如下:
dogs_0 = {'color':'green','age':4}
dogs_1 = {'color':'black','age':3}
dogs_2 = {'color':'white','age':2}
dogs = [dogs_0,dogs_1,dogs_2]
for dog in dogs:
print(dog)
输出结果如下:
3.2 在字典中存储列表
每当需要在字典中将一个键关联到多个值时,都可以在字典中嵌套一个列表。例子如下:
pets = {
'dogs':['jinmao','xueqiao'],
'ducks':['yazi'],
'cats':['yingduan','meiduan'],
}
for name,pet in pets.items():
print(f'\n{name.title()} are:')
for pet in pets:
print(f"\t{pet.title()}")
输出结果如下:
3.3 在字典中存储字典
可在字典中嵌套字典,但这样做时,代码就变得复杂起来。
例子如下(将狗狗名作为键,然后将每只狗狗信息存储在一个字典中,并将这些字典作为与用户名相关联的值):
dogs = {
'jinmao':{
'color': 'black',
'age' : 5,
},
'bandian':{
'color': 'white',
'age' : 9
}
}
for dog_information,dog in dogs.items():
print(f'\nDog_information:{dog_information}')
color = {dog['color']}
age = {dog['age']}
print(f'\tColor:{color}')
print(f'\tAge:{age}')
输出结果如下:
今天的学习总结就到这里啦!如果有什么问题可以在评论区留言呀~
如果帮助到大家,可以一键三连+关注支持下~
参考学习书籍:Python编程 从入门到实践 (第二版)
系列文章目录