1.1 创建字典
字典的创建方法有两种:
-
使用内建函数
dict()
并从其他映射或键-值对序列创建字典,如:keys = ['Tom', 'Jerry'] values = ['cat', 'rat'] dictionary = dict(keys,values) #传入两个列表参数,前一个为key,后一个为value print(dictionary)
-
使用字面量创建字典,如:
dictionary = { 'Tom':'cat', 'Jerry':'rat' } print(dictionary)
1.2 基本的字典操作
- len(d):返回字典d中包含的项数
- d[k]:返回与k键相关联的值
- d[k] = v:将值v关联到键k
- del d[k]:删除键为k的项
- k in d:检查字典d中是否包含键为k的项
1.3 字典的常用方法
- clear():清空整个字典
- copy():浅复制一个字典(深复制需要用到copy模块中的deepcopy函数)
- fromkeys():创建一个新字典,其中包含指定的键,且每个键对应的值都是None,如:
{}.fromkeys(['name','age'])
- get():获取字典中一个键的值,若该键不存在则返回None
- items():返回一个包含所有字典项的列表(字典视图),其中每个元素都为(key,value)的形式,且字典项在列表中的排列顺序不确定
- keys():返回一个字典视图,其中包含指定字典中的键
- values():返回一个由字典中的值组成的字典视图,并且可包含重复元素
- pop():获取与指定键相关联的值,并将该键-值对从字典中删除
- popitem():随机从字典中pop一个字典项
- setdefault():在字典不包含指定的键时,在字典中添加指定的键值对;也可像get()一样使用
- update():使用一个字典中的项来更新另一个字典
1.4 字典推导式
使用字典推导式可以快速生成一个字典,它的表现形式和列表推导式类似:
# 第一种写法:
# 字典名 = {键名:键值表达式 for 键名 in 键名列表}
# 第二种写法:
# 字典名 = {索引:表达式 for 索引 in range(开始位置, 结束位置)}
# 例如:
import random
random_dict = {i:random.randint(10, 100) for i in range(1, 5)}
print("生成的字典为:", random_dict)