Python是一种面向对象的编程语言,它有着丰富的数据类型和结构,其中最有用的之一就是字典。Python字典是一个基于键值对存储的无序集合,它可以保存任何类型的数据,包括数字、字符串、元组、列表和其他字典。
一、字典基础操作
1、创建字典
# 创建一个空字典 my_dict = {} # 创建并初始化一个字典 my_dict = {'name': 'Tom', 'age': 18}
2、访问字典元素
# 获取指定的元素 name = my_dict['name'] age = my_dict['age'] # 遍历字典 for key, value in my_dict.items(): print(key, value)
3、修改字典元素
# 修改元素的值 my_dict['age'] = 20 # 添加新的元素 my_dict['gender'] = 'male'
4、删除元素
# 删除指定的元素 del my_dict['gender'] # 删除所有元素 my_dict.clear()
二、字典高级操作
1、复制字典
# 复制字典 new_dict = my_dict.copy()
2、合并字典
# 合并字典 dict1 = {'name': 'Tom'} dict2 = {'age': 18} dict3 = {'gender': 'male'} merged_dict = {**dict1, **dict2, **dict3}
3、转换字典
# 转换为列表 my_dict.items() # 转换为字符串 str(my_dict)
三、字典实际应用
1、用字典实现计数器
# 计算每个元素的出现次数 my_list = ['a', 'b', 'c', 'a', 'b', 'a'] my_dict = {} for elem in my_list: if elem in my_dict: my_dict[elem] += 1 else: my_dict[elem] = 1
2、用字典实现缓存
# 用字典实现一个简单的缓存 class LRUCache: def __init__(self, capacity: int): self.capacity = capacity self.cache = {} self.order = [] def get(self, key: int) -> int: if key in self.cache: self.order.remove(key) self.order.append(key) return self.cache[key] else: return -1 def put(self, key: int, value: int) -> None: if key in self.cache: self.order.remove(key) self.order.append(key) self.cache[key] = value if len(self.cache) > self.capacity: del self.cache[self.order.pop(0)]
四、总结
Python字典是一种非常强大的数据结构,它的应用非常广泛。掌握字典的基本操作和高级用法,可以帮助我们更加高效地处理数据,提高代码的质量和效率。