python中的字典(Dictionary)
在Python中,字典(Dictionary)是一种键-值对的无序集合,用于存储和查找具有唯一键的元素。字典提供了一个高效的方式来根据键访问和操作值。
特点:
- 字典是无序的,其中的元素没有固定的顺序。
- 字典中的每个元素由一个键和一个值组成,键和值之间使用冒号 : 分隔。
- 键必须是唯一的且不可变的类型(如字符串、整数),值可以是任意类型的对象。
- 字典是可变的,可以添加、删除和修改元素。
创建字典:
可以使用花括号 {} 或者使用 dict() 函数来创建一个空字典,或者在花括号内加入键值对来创建带有初始值的字典。以下是几个示例:
empty_dict = {} # 创建空字典 fruits = {'apple': 1, 'banana': 2, 'orange': 3} # 创建含有键值对的字典 mixed = {1: 'hello', 'name': 'Alice', True: 3.14} # 字典包含不同类型的键值对
访问和修改字典元素:
可以通过键来访问字典中的值,使用方括号 [] 运算符并指定键来访问对应的值。可以通过键来修改字典中的值。示例如下:
fruits = {'apple': 1, 'banana': 2, 'orange': 3} print(fruits['apple']) # 输出: 1 fruits['banana'] = 10 # 修改'banana'对应的值为10 print(fruits) # 输出: {'apple': 1, 'banana': 10, 'orange': 3}
如果访问一个不存在的键,会引发 KeyError 错误。可以使用 get() 方法来避免这种情况,该方法返回键对应的值,如果键不存在则返回指定的默认值。
fruits = {'apple': 1, 'banana': 2, 'orange': 3} print(fruits.get('apple')) # 输出: 1 print(fruits.get('grape', 0)) # 输出: 0,键'grape'不存在,返回默认值0
常用操作:
字典支持多种常用操作,例如:
- 添加或修改元素:可以通过指定键和相应的值来添加或修改字典中的元素。
fruits = {'apple': 1, 'banana': 2, 'orange': 3} fruits['melon'] = 4 # 添加'melon'键和对应的值4 print(fruits) # 输出: {'apple': 1, 'banana': 2, 'orange': 3, 'melon': 4} fruits['banana'] = 10 # 修改'banana'对应的值为10 print(fruits) # 输出: {'apple': 1, 'banana': 10, 'orange': 3, 'melon': 4}
- 删除元素:可以使用 del 关键字根据键来删除字典中的元素。
fruits = {'apple': 1, 'banana': 2, 'orange': 3} del fruits['banana'] # 删除'banana'键和对应的值 print(fruits) # 输出: {'apple': 1, 'orange': 3}
- 循环遍历字典:可以使用 for 循环遍历字典中的每个键、值或键值对。
fruits = {'apple': 1, 'banana': 2, 'orange': 3} # 遍历键 for key in fruits: print(key) # 遍历值 for value in fruits.values(): print(value) # 遍历键值对 for key, value in fruits.items(): print(key, value)
- 其他常用操作:字典还支持获取长度、清空字典、判断键是否存在等操作。可以使用相应的方法来完成这些操作。
fruits = {'apple': 1, 'banana': 2, 'orange': 3} length = len(fruits) # 获取字典长度 print(length) # 输出: 3 fruits.clear() # 清空字典 print(fruits) # 输出: {} print('apple' in fruits) # 检查键'apple'是否存在,输出: False
以上是关于Python中字典的详细讲解。字典是一种非常有用和灵活的数据结构,可以存储键值对并快速查找。它在实际编程中应用广泛,可用于存储配置信息、缓存数据、数据库查询结果等各种情况。
如果大家觉得有用的话,可以关注我下面的微信公众号,极客李华,我会在里面更新更多行业资讯,企业面试内容,编程资源,如何写出可以让大厂面试官眼前一亮的简历等内容,让大家更好学习编程,我的抖音,B站也叫极客李华。大家喜欢也可以关注一下