一.字典的定义
在Python中,字典是一种非常重要的数据结构,它提供了一种存储键值对的方式。与列表(List)和元组(Tuple)等线性数据结构不同,字典通过键(Key)来访问其元素,而不是通过索引。这种特性使得字典成为处理需要快速查找、插入和删除元素的数据集时的理想选择。字典在许多编程语言中都有实现,
二.字典的键与值
键(Key)
字典中的键用于唯一标识每个值。键可以是任何不可变的数据类型,例如整数、浮点数、字符串、元组等。需要注意的是,列表、字典等可变数据类型不能作为字典的键,因为它们的值是可以改变的,如果作为键,可能会导致字典的查找和操作出现混乱。
键在字典中必须是唯一的,如果我们尝试向字典中添加一个已经存在的键,那么新的值将会覆盖原来的值。
值(Value)
与键相对应的值可以是任何数据类型,包括整数、浮点数、字符串、列表、字典、函数等。这使得字典非常灵活,可以用来存储和组织各种类型的数据。
例如,在上述的my_dict
字典中,'name'
、'age'
和'city'
是键,'Alice'
、25
和'New York'
是对应的值。
三.字典的常见操作
创建字典
如前文所述,我们可以使用花括号{}
来创建一个字典,也可以使用内置的dict()
函数来创建字典。
# 使用花括号创建字典
my_dict = {'name': 'Alice', 'age': 25, 'city': 'New York'}
# 使用 dict()函数创建字典
my_dict2 = dict(name='Bob', age=30, city='London')
访问字典中的值
我们可以通过键来访问字典中的值。如果键不存在,可能会引发异常。为了避免这种情况,我们可以先使用in
关键字检查键是否存在,或者使用get()
方法,如果键不存在,get()
方法会返回None
或者我们指定的默认值。
# 通过键访问值
print(my_dict['name']) # 输出: Alice
# 使用 in 关键字检查键是否存在
if 'name' in my_dict:
print(my_dict['name'])
# 使用 get()方法访问值
print(my_dict.get('name')) # 输出: Alice
print(my_dict.get('gender', 'Unknown')) # 如果 'gender' 键不存在,返回 'Unknown'
添加和修改字典中的元素
我们可以通过给一个不存在的键赋值来添加新的键值对,也可以通过给已存在的键赋值来修改对应的值
my_dict['gender'] = 'Female' # 添加新的键值对
my_dict['age'] = 26 # 修改 'age' 对应的值
删除字典中的元素
我们可以使用del
关键字删除指定的键值对,也可以使用pop()
方法删除指定的键值对,并返回被删除的值
del my_dict['gender'] # 删除 'gender' 键值对
deleted_value = my_dict.pop('age') # 删除 'age' 键值对,并返回对应的值
遍历字典
有三种方式去遍历字典,需要使用三种方法key获取键,value获取值,item获取键和值。
我们可以使用for
循环来遍历字典中的键值对。
# 遍历键
for key in my_dict:
print(key)
# 遍历值
for value in my_dict.values():
print(value)
# 遍历键值对
for key, value in my_dict.items():
print(key, value)
检查字典的长度
我们可以使用len()
函数来获取字典中键值对的数量。
print(len(my_dict))
进阶:字典内置函数&方法
Python字典包含了以下内置函数:
序号 | 函数及描述 | 实例 |
---|---|---|
1 | len(dict) 计算字典元素个数,即键的总数。 | >>> tinydict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'} >>> len(tinydict) 3 |
2 | str(dict) 输出字典,可以打印的字符串表示。 | >>> tinydict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'} >>> str(tinydict) "{'Name': 'Runoob', 'Class': 'First', 'Age': 7}" |
3 | type(variable) 返回输入的变量类型,如果变量是字典就返回字典类型。 | >>> tinydict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'} >>> type(tinydict) <class 'dict'> |
Python字典包含了以下内置方法:
序号 | 函数及描述 |
---|---|
1 | dict.clear() 删除字典内所有元素 |
2 | dict.copy() 返回一个字典的浅复制 |
3 | dict.fromkeys() 创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值 |
4 | dict.get(key, default=None) 返回指定键的值,如果键不在字典中返回 default 设置的默认值 |
5 | key in dict 如果键在字典dict里返回true,否则返回false |
6 | dict.items() 以列表返回一个视图对象 |
7 | dict.keys() 返回一个视图对象 |
8 | dict.setdefault(key, default=None) 和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default |
9 | dict.update(dict2) 把字典dict2的键/值对更新到dict里 |
10 | dict.values() 返回一个视图对象 |
11 | pop(key[,default]) 删除字典 key(键)所对应的值,返回被删除的值。 |
12 | popitem() 返回并删除字典中的最后一对键和值。 |
我们可以多通过写这些方法加深印象,帮助我们更好使用这个字典
标签:返回,开启,dict,key,数据处理,键值,my,字典 From: https://blog.csdn.net/2203_76032301/article/details/140371742