1. 字典dict介绍

字典:使用键值对(key:value)来存储数据,每一个键都对应一个值,通过键(key)可以快速找到对应的值(value).

特点:键值对(key:value)存储、键(key)不能重复、可修改。

定义:

# 定义字典
字典名称 = {key:value, key:value, key:value...}
# 定义空字典
字典名称 = {}
字典名称 = dict{}

# 根据 key 获取 value= 字典名称[key]

注意点:字典(dict)中的value可以是任何类型的数据,而key不能为可变类型(如,key不可以是列表、集合、字典)

2.字典中的常用方法

字典中的常用方法主要围绕增删改查进行的。

方法 含义 示例
字典名称[key] = value 往指定字典中添加key-value键值对 dict1[“韩立”] = 680
字典名称.pop(key) 删除字典中指定的key,并返回该key对应的value score = dict1.pop(“韩立”)
del 字典名称[key] 删除字典中指定的键值对 del dict1[“许立国”]
字典名称[key] = value 修改字典中指定的key对应的值 dict1[“南宫婉”] = 650
字典名称[key] 根据key获取value dict1[“南宫婉”]
字典名称.get(key) 根据key获取value dict1.get(“李慕婉”)
字典名称.keys() 获取所有的key dict1.keys()
字典名称.values() 获取所有的value dict1.values()
字典名称.items() 获取所有的key-value键值对 dict1.items()

代码示例及运行结果:

# 定义字典
dict1 = {"许立国": 620, "南宫婉": 660, "李慕婉": 630, "王林": 690, "贝罗": 670}

dict1["韩立"] = 680
print("新增键值对后的字典:", dict1)

score = dict1.pop("韩立")
print("删除字典中的韩立:", score)

del dict1["许立国"]
print("删除许立国后的字典:", dict1)

dict1["南宫婉"] = 650
print("修改键值对后的字典:", dict1)

value1 = dict1["南宫婉"]
print("获取key为南宫婉的值:", value1)

value2 = dict1.get("李慕婉")
print("获取key为李慕婉的值:", value2)

print("获取字典中的所有key:", dict1.keys())
print("获取字典中的所有value:", dict1.values())
print("获取字典中的所有key-value:", dict1.items())

在这里插入图片描述

3. 数据容器对比

数据容器有列表(list)、字符串(str)、元组(tuple)、集合(set)、字典(dict),这5者之间的对比,如下表所示:

特性 列表(list) 字符串(str) 元组(tuple) 集合(set) 字典(dict)
有序性 有序 有序 有序 无序 有序(Python3.7+)
元素重复 允许 允许 允许 不允许 key不允许,value允许
可变性 可变 不可变 不可变 可变 可变
索引访问 支持 支持 支持 不支持 不支持
切片操作 支持 支持 支持 不支持 不支持
使用场景 有序可重复数据集合 文本处理 固定数据记录 去重数据集合 键值对

更多推荐