1. 什么是字典
字典是Python内置的一种数据结构,用于存储键值对(key-value)信息。字典是无序的,可变的(可修改)数据类型,使用大括号 {} 来表示,每个键值对之间使用逗号分隔。
# 创建字典
dict1 = {'name': 'Tom', 'age': 18, 'gender': '男'}
print(dict1) # {'name': 'Tom', 'age': 18, 'gender': '男'}
# 访问字典中的值
print(dict1['name']) # Tom
print(dict1.get('age')) # 18
# 修改字典中的值
dict1['age'] = 20
print(dict1) # {'name': 'Tom', 'age': 20, 'gender': '男'}
# 遍历字典
for key, value in dict1.items():
print(key, value)
字典中的键必须是不可变的数据类型(如字符串、数字、元组等),值可以是任意类型的数据,包括列表、字典等。
2. 字典常用操作
2.1 添加键值对
字典中添加键值对的方法是给字典指定一个新的键并指定一个新值,如果键已经存在,则会把该键对应的值修改为新值。
dict1 = {'name': 'Tom', 'age': 18, 'gender': '男'}
dict1['height'] = 175
print(dict1) # {'name': 'Tom', 'age': 18, 'gender': '男', 'height': 175}
2.2 删除键值对
删除字典中某个键值对使用del语句。
dict1 = {'name': 'Tom', 'age': 18, 'gender': '男'}
del dict1['age']
print(dict1) # {'name': 'Tom', 'gender': '男'}
2.3 获取所有键和所有值
获取所有键可以使用keys()方法,获取所有值可以使用values()方法。
dict1 = {'name': 'Tom', 'age': 18, 'gender': '男'}
keys = dict1.keys()
values = dict1.values()
print(keys, values) # dict_keys(['name', 'age', 'gender']) dict_values(['Tom', 18, '男'])
2.4 判断字典是否存在某个键
判断字典是否存在某个键可以使用in关键字或者get()方法。
dict1 = {'name': 'Tom', 'age': 18, 'gender': '男'}
if 'name' in dict1:
print('字典中存在name键')
if dict1.get('age') is not None:
print('字典中存在age键')
2.5 清空字典
清空字典可以使用clear()方法。
dict1 = {'name': 'Tom', 'age': 18, 'gender': '男'}
dict1.clear()
print(dict1) # {}
3. 字典的应用实例
3.1 统计字符串中每个字符出现的次数
利用字典统计字符串中每个字符出现的次数,代码如下:
str1 = 'hello,world!'
dict1 = {}
for c in str1:
dict1[c] = dict1.get(c, 0) + 1
print(dict1) # {'h': 1, 'e': 1, 'l': 3, 'o': 2, ',': 1, 'w': 1, 'r': 1, 'd': 1, '!': 1}
3.2 统计一段文本中每个单词出现的次数(忽略大小写)
利用字典统计一段文本中每个单词出现的次数,忽略大小写,代码如下:
text = 'This is a text, and it is just a text.'
text = text.lower()
words = text.split()
dict1 = {}
for word in words:
dict1[word] = dict1.get(word, 0) + 1
print(dict1) # {'this': 1, 'is': 2, 'a': 2, 'text,': 1, 'and': 1, 'it': 1, 'just': 1, 'text.': 1}
3.3 将列表中的元素去重
利用字典将列表中的元素去重,代码如下:
list1 = [1, 2, 3, 3, 4, 4, 5, 5]
dict1 = {}
for item in list1:
dict1[item] = None
list2 = list(dict1.keys())
print(list2) # [1, 2, 3, 4, 5]
4. 总结
字典是Python中非常重要的数据类型之一,可用于存储键值对信息,应用广泛。字典的基本操作包括添加、删除、遍历、判断键是否存在、获取所有键和所有值等。在实际应用中,可以利用字典去重、统计次数等。