现在我将为你详细讲解Python中字典的基本用法,包括嵌套字典,以下是详细攻略。
字典的基本用法
字典(dictionary)是 python3 中的一个重要数据类型,在字典中,每个数据都是由一个键和对应的值所组成的键值对。
创建字典
我们可以使用一对大括号来创建一个空字典,也可以在大括号中使用键值对的形式来创建字典。
# 创建空字典
dict1 = {}
# 创建包含键值对的字典
dict2 = {'苹果': 3, '香蕉': 2, '梨': 4}
访问字典中的值
字典的值可以通过其对应的键进行访问,若键存在,则返回对应的值;若不存在,则会引发 KeyError
错误。
# 访问字典中的值
print(dict2['苹果'])
# 输出:3
添加或修改字典中的键值对
若我们需要向字典中加入新的键值对,只需为其指定一个新的键及其对应的值即可;若该键已经存在,那么就会修改该键原有的值。
# 向字典中加入新键值对
dict2['桃子'] = 6
# 修改字典中已有的键值对
dict2['苹果'] = 4
删除字典中的键值对
通过 del
语句可以删除字典中的键值对。
# 删除字典中的键值对
del dict2['香蕉']
遍历字典
我们可以通过 items()
方法返回一个包含所有键值对的元组列表,进而遍历字典。
# 遍历字典
for key, value in dict2.items():
print(key, value)
嵌套字典
字典中可以包含其他的数据类型,甚至是嵌套的字典,从而可以构造出非常复杂的数据结构。
创建嵌套字典
通过嵌套字典的方式,可以在一个字典中存储多个字典。
# 创建嵌套字典
dict3 = {'Fruits': {'苹果': 3, '香蕉': 2, '梨': 4}, 'Vegetables': {'西红柿': 6, '辣椒': 8, '黄瓜': 5}}
访问嵌套字典中的值
通过在外层及内层字典中进行键值访问,可以获取嵌套字典中指定键的值。
# 访问嵌套字典中的值
print(dict3['Fruits']['梨'])
# 输出:4
添加或修改嵌套字典中的键值对
我们可以在嵌套字典中添加新的键值对,也可以修改其原有的键值对。
# 向嵌套字典中加入新键值对
dict3['Fruits']['桃子'] = 6
# 修改嵌套字典中已有的键值对
dict3['Fruits']['苹果'] = 4
删除嵌套字典中的键值对
通过 del
语句可以删除嵌套字典中的键值对。
# 删除嵌套字典中的键值对
del dict3['Vegetables']['黄瓜']
遍历嵌套字典
通过嵌套循环遍历嵌套字典中的元素,可以获取每一个键值对。
# 遍历嵌套字典
for key1, value1 in dict3.items():
print(key1)
for key2, value2 in value1.items():
print(key2, value2)
以上就是关于Python字典的基本用法以及嵌套字典的完整攻略。让我们通过示例进一步了解字典的应用。
示例1:
我们可以使用字典中的嵌套数据类型,构造出一个用于存储学生成绩的数据结构。
# 定义嵌套字典
grades = {'Jack': {'Math': 85, 'English': 75, 'Physics': 90},
'Lucy': {'Math': 90, 'English': 80, 'Physics': 95},
'Tom': {'Math': 75, 'English': 65, 'Physics': 80}}
# 计算平均分
for name, score in grades.items():
avg_score = sum(score.values())/len(score.values())
print(name, '的平均分是:', avg_score)
示例2:
对于拥有多个嵌套层级的数据,我们可以使用嵌套字典来便捷地存储和访问它们。
# 定义嵌套字典
company = {'Finance': {'Tom': {'Salary': 8500, 'Bonus': 1500},
'Joe': {'Salary': 9000, 'Bonus': 2000},
'Jenny': {'Salary': 7500, 'Bonus': 1000}},
'HR': {'Bill': {'Salary': 8000, 'Bonus': 1200},
'Emily': {'Salary': 8200, 'Bonus': 1300},
'David': {'Salary': 7800, 'Bonus': 1100}}}
# 访问嵌套字典中的值
print(company['Finance']['Joe']['Bonus'])
# 输出:2000
希望以上内容对你有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python里字典的基本用法(包括嵌套字典) - Python技术站