一、什么是Python字典?
Python字典是一种可变的、无序的集合类型,它由键(key)和值(value)组成。Python字典的键必须是唯一的、不可变的,而值可以是任何数据类型。
Python字典可以用花括号{}表示,每个键值对之间用逗号分隔。
#示例代码
#创建一个字典
dict_example = {'name': 'Tom', 'age': 28, 'gender': 'male'}
#访问字典中的值
print(dict_example['name']) #输出结果为:Tom
#修改字典中的值
dict_example['age'] = 30
#输出字典
print(dict_example) #输出结果为:{'name': 'Tom', 'age': 30, 'gender': 'male'}
二、Python字典的基本操作
1、访问字典中的值
Python字典中的键可以用来访问相应的值,例如,对于一个名为dict_example的字典,它的键为'name', 'age' 和 'gender'。要访问字典中的值,可以通过字典名和键名来访问。
#示例代码
dict_example = {'name': 'Tom', 'age': 28, 'gender': 'male'}
#访问字典中的值
print(dict_example['name']) #输出结果为:Tom
2、修改字典中的值
如果字典中已经存在某个键,可以通过给该键赋一个新值的方式来修改字典中的值。
#示例代码
dict_example = {'name': 'Tom', 'age': 28, 'gender': 'male'}
#修改字典中的值
dict_example['age'] = 30
#输出字典
print(dict_example) #输出结果为:{'name': 'Tom', 'age': 30, 'gender': 'male'}
3、删除字典中的键值对
可以使用Python内置的del关键字从字典中删除键值对,也可以使用字典的pop()方法。
#示例代码
dict_example = {'name': 'Tom', 'age': 28, 'gender': 'male'}
#删除字典中的键值对
del dict_example['gender']
#输出字典
print(dict_example) #输出结果为:{'name': 'Tom', 'age': 28}
#删除字典中的键值对并返回被删除的值
age = dict_example.pop('age')
#输出删除的值
print(age) #输出结果为:28
4、遍历字典
Python字典可以使用for循环遍历字典中的键值对,其中keys()方法可以返回字典中所有的key,而values()方法可以返回字典中所有的value。
#示例代码
dict_example = {'name': 'Tom', 'age': 28, 'gender': 'male'}
#遍历字典
for key, value in dict_example.items():
print(key + ': ' + str(value))
三、Python字典的高级用法
1、使用字典生成式
字典生成式是一种快速创建字典的方式,类似于列表生成式。
#示例代码
dict_example = {x: x ** 2 for x in (2, 4, 6)}
#输出字典
print(dict_example) #输出结果为:{2: 4, 4: 16, 6: 36}
2、使用setdefault()方法
setdefault()方法可以用来向字典中添加键值对。
#示例代码
dict_example = {'name': 'Tom', 'age': 28, 'gender': 'male'}
#使用setdefault()方法向字典中添加键值对
dict_example.setdefault('school', 'ZJU')
#输出字典
print(dict_example) #输出结果为:{'name': 'Tom', 'age': 28, 'gender': 'male', 'school': 'ZJU'}
3、使用collections模块中的defaultdict类
defaultdict类可以自动为字典中不存在的键设置一个默认值。
#导入collections模块中的defaultdict类
from collections import defaultdict
#使用defaultdict类创建一个字典
dict_example = defaultdict(int)
dict_example['Tom'] = 1
#输出字典
print(dict_example) #输出结果为:{'Tom': 1}
dict_example['Jerry'] += 1
#输出字典
print(dict_example) #输出结果为:{'Tom': 1, 'Jerry': 1}
四、总结
Python字典是一种高效管理键值对数据的数据类型。对于一个Python程序员而言,掌握Python字典的基本用法和高级用法是非常必要的。