python基础之字典

  • Post category:Python

Python基础之字典

字典(dict)是Python中非常常用的数据类型之一,也是一个非常好用的数据类型,可以用于存储键-值对,并支持高效的插入、删除、查找操作,是Python中非常常用的数据类型之一。

字典的定义和基本操作

定义字典的方式为使用大括号{},其中每个键(key)和值(value)之间使用冒号(:)连接,多个键值对之间使用逗号(,)分隔,例如:

d = {'name': 'Tom', 'age': 18, 'gender': 'Male'}

可以用字典的键来访问对应的值,如下所示:

print(d['name'])  # 输出Tom

使用update()方法可以更新字典中的键值对:

d = {'name': 'Tom', 'age': 18, 'gender': 'Male'}
d.update({'name': 'Jerry'})
print(d)  # 输出{'name': 'Jerry', 'age': 18, 'gender': 'Male'}

使用del语句可以删除字典中的键值对:

d = {'name': 'Tom', 'age': 18, 'gender': 'Male'}
del d['name']
print(d)  # 输出{'age': 18, 'gender': 'Male'}

使用in语句可以判断一个键是否在字典中:

d = {'name': 'Tom', 'age': 18, 'gender': 'Male'}
if 'age' in d:
    print('age is in d')

使用len语句可以获取字典中键值对的数量:

d = {'name': 'Tom', 'age': 18, 'gender': 'Male'}
print(len(d))  # 输出3

字典的遍历

字典的遍历可以使用items()方法获取键值对的列表,然后使用for循环遍历:

d = {'name': 'Tom', 'age': 18, 'gender': 'Male'}
for key, value in d.items():
    print(key, value)

字典的常用操作

获取所有的键和值

可以使用keys()方法获取字典的所有键,使用values()方法获取字典的所有值:

d = {'name': 'Tom', 'age': 18, 'gender': 'Male'}
keys = d.keys()
values = d.values()
print(keys)  # 输出dict_keys(['name', 'age', 'gender'])
print(values)  # 输出dict_values(['Tom', 18, 'Male'])

获取某个键对应的值,如果键不存在,返回默认值

可以使用get()方法获取某个键对应的值,如果键不存在,返回默认值:

d = {'name': 'Tom', 'age': 18, 'gender': 'Male'}
value = d.get('name', 'Jack')
print(value)  # 输出Tom
value = d.get('address', 'Unkown')
print(value)  # 输出Unkown

获取所有的键值对

可以使用items()方法获取所有的键值对:

d = {'name': 'Tom', 'age': 18, 'gender': 'Male'}
items = d.items()
print(items)  # 输出dict_items([('name', 'Tom'), ('age', 18), ('gender', 'Male')])

示例说明

示例1:计算单词频率

假设我们有一个英文字符串,需要统计其中单词的出现频率。可以使用如下代码:

text = 'Hello world, my name is Tom. Nice to meet you.'
words = text.split()
freqs = {}
for word in words:
    if word in freqs:
        freqs[word] += 1
    else:
        freqs[word] = 1
print(freqs)

输出结果如下:

{'Hello': 1, 'world,': 1, 'my': 1, 'name': 1, 'is': 1, 'Tom.': 1, 'Nice': 1, 'to': 1, 'meet': 1, 'you.': 1}

示例2:计算两个列表的并集、交集和差集

假设我们有两个列表,需要计算它们的并集、交集和差集。可以使用如下代码:

a = [1, 2, 3, 4]
b = [3, 4, 5, 6]
set_a = set(a)
set_b = set(b)
print('并集:', set_a | set_b)
print('交集:', set_a & set_b)
print('差集:', set_a - set_b)

输出结果如下:

并集: {1, 2, 3, 4, 5, 6}
交集: {3, 4}
差集: {1, 2}

以上是Python基础之字典的完整攻略,希望能够对大家有所帮助。