当你想要通过Python高效地存储和检索数据时,字典(Dictionary)就成为了不可或缺的概念。在这里,我们将分享一下如何与老齐一起学习Python字典。
为什么要学习Python字典?
Python的字典是一种优秀的数据结构,它可以在O(1)的时间复杂度内完成增加、删除、修改和查找操作。并且在很多场景下,字典都比列表、元组、集合等其他数据结构更加高效。字典主要由键值对(key-value pairs)组成,在字典中,键是唯一的,而值则可以重复。
如何创建一个Python字典?
要创建一个Python字典,你可以使用花括号({})来进行初始化。比如:
my_dict = {}
你也可以使用键值对列表进行字典的初始化。每个键值对之间使用逗号进行分隔。比如:
my_dict = {'name': 'Tom', 'age': 20, 'gender': 'male'}
如何向字典中添加键值对?
添加键值对非常简单,你只需要使用key作为索引,然后为这个key设置一个value即可。比如:
my_dict['name'] = 'Mary'
这将把键为”name”的值从”Tom”改为”Mary”。
如何从字典中删除键值对?
删除字典中的键值对同样也非常简单,你只需要使用”del”关键字并指定你要删除的key即可。比如:
del my_dict['age']
这将从字典中删除键为”age”的键值对。
如何修改字典中的键值对?
修改字典中某个特定key对应的value也非常简单,你只需要使用key作为索引,然后为这个key设置一个新的value即可。比如:
my_dict['age'] = 21
这将把键为”age”的值从原来的20修改为21。
如何访问字典中的值?
访问字典中的value是很常见的操作,你只需要使用key作为索引即可。比如:
print(my_dict['name'])
这将打印出”name”这个键对应的值。
如何遍历字典中的键值对?
有时候你需要遍历整个字典并对其中的每一个键值对进行操作。为此你可以使用for循环,并使用.items()方法来遍历字典中的所有键值对。比如:
for key, value in my_dict.items():
print(key, value)
这将会逐行打印出所有的键值对。
示例1:用字典存储学生信息
下面的代码是一个示例,它演示了如何用字典来存储学生的信息,并对这些信息进行操作:
students = {
'Tom': {'age': 20, 'gender': 'male'},
'Mary': {'age': 19, 'gender': 'female'},
'John': {'age': 22, 'gender': 'male'}
}
# 输出所有学生的姓名、年龄和性别
for name, info in students.items():
age = info['age']
gender = info['gender']
print(f"{name}: {age}, {gender}")
# 修改Tom的年龄为21岁
students['Tom']['age'] = 21
# 删除John的信息
del students['John']
示例2:用字典存储学生成绩
下面的代码是另一个示例,它演示了如何用字典来存储学生成绩,并对这些成绩进行操作:
scores = {
'Tom': {'math': 80, 'English': 90},
'Mary': {'math': 75, 'English': 85},
'John': {'math': 90, 'English': 80}
}
# 计算Tom的总成绩
tom_scores = scores['Tom']
total_score = sum(tom_scores.values())
print(f"Tom's total score is {total_score}")
# 计算每个学生的平均分数
for name, subject_scores in scores.items():
avg_score = sum(subject_scores.values()) / len(subject_scores)
print(f"{name}'s average score is {avg_score}")
这个示例演示了如何使用嵌套字典来存储复杂的数据,并对这些数据进行加工和计算。
希望这份攻略可以帮助你更好地掌握Python字典的使用方法。