1、定义字典
Python是一门广泛应用于数据分析、机器学习等领域的语言,而字典作为Python中最常用的数据类型之一,也被广泛使用。Python中的字典(dict)类型是一种高效的数据结构,可以用来存储和查找任意类型的数据对象,例如数字、字符串、列表、元组等。定义字典非常简单,例如:
动手练一练:
# 定义一个字典
a = {
"Apple":"苹果",
"Banana":"香蕉",
"Cherry":"樱桃",
"Orange":"橙子",
}
b = {} # 定义空字典
print(a)
print("-------这是虚线-------")
print(b)
执行以上代码,输出结果为:
{'Apple': '苹果', 'Banana': '香蕉', 'Cherry': '樱桃', 'Orange': '橙子'}
-------这是虚线-------
{}
上面的例子中,创建了一个名为a的字典,字典的元素是成对出现的,创建字典使用大括号“{}”括起来,键、值用冒号“:”分割,每对键和值之间用逗号“,”分割。
字典的语法格式为:
字典 = { 键(Key) : 值(Value) , 键(Key) : 值(Value) , ……}
字典以键值成对的形式存储数据,其中键(key)必须是唯一的,而值(value)则可以重复。如果是空字典(一个元素都没有),直接使用“{}”表示。
2、使用字典
在Python中,字典是由一系列的键值对(key:value)组合而成的数据结构,字典元素都是成对出现的,每个元素必须要有键和对应的值,访问字典需要用键(key)去“查找”值(value)。字典类型很像学生时代常用的新华字典。我们知道,通过新华字典中的音节表,可以快速找到想要查找的汉字。其中,字典里的音节表就相当于字典类型中的“键”,而音节表对应的汉字则相当于“值”。例如:
动手练一练:
# 查找字典
a = {
"Apple":"苹果",
"Banana":"香蕉",
"Cherry":"樱桃",
"Orange":"橙子",
}
print(a["Apple"]) # 输出 苹果
执行以上代码,输出结果为:
苹果
上面的例子中,由于字典中的数据没有先后关系,字典的存储是无序的,字典中的每个数据都是用“键”(key) 进行索引,而不像序列可以用下标进行索引,但是这种方法只能获取已经存在的键值对。当我们尝试访问字典中不存在的键时,Python将会显示KeyError错误信息。例如:
动手练一练:
# 查找字典
a = {
"Apple":"苹果",
"Banana":"香蕉",
"Cherry":"樱桃",
"Orange":"橙子",
}
print(a["Python"]) # 输出 KeyError错误
执行以上代码,输出结果为:
KeyError: 'Python'
为了避免这个错误异常,我们可以使用setdefault()方法尝试获取指定键的值时,如果键不存在,会插入该键并设置一个默认值。例如:
动手练一练:
# 查找字典
a = {
"Apple":"苹果",
"Banana":"香蕉",
"Cherry":"樱桃",
}
# 如果键存在,则返回键所对应的值
value1 = a.setdefault("Apple", "默认值")
print(value1) # 输出: 苹果
# 如果键不存在,则插入该键并设置一个默认值,且返回设置的默认值
value2 = a.setdefault("Python", "默认值")
print(value2) # 输出: 默认值
print(a) # 输出: {'Apple': '苹果', 'Banana': '香蕉', 'Cherry': '樱桃', 'Python': '默认值'}
执行以上代码,输出结果为:
苹果
默认值
{'Apple': '苹果', 'Banana': '香蕉', 'Cherry': '樱桃', 'Python': '默认值'}
3、修改字典
字典和列表一样,都是可变的数据结构,可以在创建后修改其内容。要修改字典中的值,可直接指定字典中的键所对应的新值,例如:
动手练一练:
# 修改字典
a = {
"Apple":"苹果",
"Banana":"香蕉",
"Orange":"橙子",
}
print(a) # 输出 {'Apple': '苹果', 'Banana': '香蕉', 'Orange': '橙子'}
a["Apple"] = "桃子"
print(a) # 输出 {'Apple': '桃子', 'Banana': '香蕉', 'Orange': '橙子'}
执行以上代码,输出结果为:
{'Apple': '苹果', 'Banana': '香蕉', 'Orange': '橙子'}
{'Apple': '桃子', 'Banana': '香蕉', 'Orange': '橙子'}
上面的例子中,我们成功修改了“Apple”对应的值,注意:只能通过键来修改值。
4、新增元素
字典新增元素和修改元素的语法基本相同,也是直接指定字典中新的键所对应的值,例如:
动手练一练:
# 新增元素
a = {} # 定义空字典
print(a)
a["Apple"] = "苹果"
print(a)
执行以上代码,输出结果为:
{}
{'Apple': '苹果'}
上面的例子中,先定义一个空字典,通过赋值语句,给字典中增加了一组键值对。
5、删除元素
字典中删除元素,和列表、元组删除元素一样,字典也可以使用del关键字根据键来删除字典中的元素,例如:
动手练一练:
# 删除元素
a = {
"Apple":"苹果",
"Banana":"香蕉",
"Orange":"橙子",
}
print(a) # 输出 {'Apple': '苹果', 'Banana': '香蕉', 'Orange': '橙子'}
del a["Orange"]
print(a) # 输出 {'Apple': '苹果', 'Banana': '香蕉'}
执行以上代码,输出结果为:
{'Apple': '苹果', 'Banana': '香蕉', 'Orange': '橙子'}
{'Apple': '苹果', 'Banana': '香蕉'}
上面的例子中,del关键字成功删除了键为“Orange”的元素。