一、定义

使用{}表示,{键:值}

                    键名是唯一的,不能重复

                    值:可以相同,可以是多种数据类型,list,tuple,str,int,可嵌套,可修改。


二、创建字典:

                    dict(a=1,b=2,c=3)        # a,b,c必须是变量

                    dict([(a,1),(b,2),(c,3)])    # a,b,c是不可变数据类型

                    {x:x+2 for x in range(9)}    # 使用推导式创建

                    {x:y for x in a for y in b}    # 把a,b两个序列的元素,对应生成词典 

                                                              # len(a) > len(b),a多出的元素值都等于b最后一个值

                                                              # len(a) < len(b) , a前面的值对应,最后一个值等于b最后值

                    dict.fromkeys(seq, value)  # 把序列seq所有元素作为键,所有键值都等于value


三、遍历词典的正确姿势:

                    for i in dict:

                            print(i, dict[i])

                    上面这种方法速度最快。建议使用!


四、词典的方法:

dict[键名] 读取指定键的值
dict.keys() 以列表返回键名
dict.values() 以列表返回值
dict.get(键名,默认值)默认值可选,返回键值,如果词典没有查询到键值,返回默认值
dict.pop(键名,默认值)默认值可选,随机读取并删除对应键,如果没有,返回默认值
dict.popitem()随机从dict删除并返回键名和值
dict.setdefault(key,default) 默认值可选,返回键值,如果词典没有查询到键值,把键和默认值添加到词典,没有默认值,向字典添加键值是None
dict1.update(dict2)把dict2里的每个元素追回到dict1里,dict1元素改变,dict1和dict2的总和
dict.clear() 删除字典的所有值,变成一个空字典{}
del(dict) 删除dict变量,变成未定义状态