内容大纲:

  一:字典的定义

  二:字典的增加 

>1:按照key增加,  无则增加,有则覆盖
    >2:setdefault()  ,无则增加,有则不变

  三:字典的删除

>1:pop()   默认删除最后一个,  通过key 删除内容
    >2:popitem()   随机删除一个 
    >3:del 字典名[索引名]
    >4:clear()   清空

  四:字典的改

>1:字典名[key] ='内容'  有则覆盖,无则增加
    >update()    字典名update(另外一个字典)   有则覆盖,无则增加
        >  update( key= values)

  五:字典的查询

>1字典名['key']   无则报错
    >2 get()   无则返回None
    >3 for 循环
    >4字典名.key()
    >5字典名.values()
    >6字典名.item()

  六,赋值运算

    >1分别赋值运算

  七:字典的嵌套

  八:相关函数

    >1 formkeys()

  九:字典的格式化输出

一:字典的定义

1,列表如果存储大量的数据,查询速度相对慢一些。
2,列表存储的数据一般没有什么关联性。
[小潘, 175, 男,......]
针对以上因素,python提供了一个基础数据类型:dict字典。
数据类型的分类:
容器型数据类型:list,tuple,dict set。
非容器型数据类型:str bool int。

可变(不可哈希)的数据类型:list,dict,set。
不可变(可哈希)的数据类型:str,bool, int,tuple

1,字典的键必须是不可变(可哈希hash)的数据类型,唯一的不重复。
字典的值可以是任意数据类型(对象)。
2,字典的查询速度非常快。

二:字典的增加

  >1  字典名[key]=valuse

1 l={'1':'a','2':'b','3':'c','4':'d'}
2 l['5']='e'
3 print(l)

  >2  setdefauit(key ,valuse)

l.setdefault('5','aaa2')
print(l)

三:字典的删除

>1 pop()   默认删除最后一个, 或者删除key,返回valuse

pop
l.pop('1')
print(l)

  >2 popitem()    随机删除一个  ,3.5 版本后,默认删除最后一个 

l.popitem()
print(l)

   >3 del 字典名[index]   公用删除方法.

del l['1']
print(l)

  >4 clear() 

l.clear()
print(l)

四 字典的改

  >1 字典名[key] = value    如果有则覆盖,没有则新增 

l['1'] ='A'
print(l)

   >2 update()      如果有则替换,没有则新增.

   旧字典名.update(新字典名) 

l1 ={'A':'ALEB','2':'B','b':'ben'}
l.update(l1)
print(l)

五 :字典的查

  >1 : 字典名[key] 

print(l['1'])

   >2 :for 循环查询

print([i for i in l])
print([j  for i , j in l.items()])

  >3: get()   字典名.get(key)  返回valuse

print(l.get('1'))

 六 赋值运算 :

  >1 : 

a = 10
b = 20
a ,b =b,a
print(a)
print(b)

 七 : 字典的嵌套

1 # l5 = {
2 #     'A':{'1':['a','b','c','d'],'2':['yi','er','san','si']},
3 #     'B':{'1':['ONE','TWO','STHREE'],'2':['一','二','三','四']}
4 # }
5 # print(l5['A']['1'][0])

字典的三级菜单用到了,字典的嵌套

八 相关函数 

  >fromkey()     字典名.fromkey(字典1,字典2)

    从字典1 中迭代的 和字典2 组成新的字典

l={'1':'a','2':'b','3':'c','4':'d'}
l2=['6678','432']
l4= ['1','2','3']
l5 =l.fromkeys(l4,l2)
print(l)
print(l5)
>>>>>
{'1': 'a', '2': 'b', '3': 'c', '4': 'd'}
{'1': ['6678', '432'], '2': ['6678', '432'], '3': ['6678', '432']}

 九 字典的格式化输出

# l5 = {
#     'A':{'1':['a','b','c','d'],'2':['yi','er','san','si']},
#     'B':{'1':['ONE','TWO','STHREE'],'2':['一','二','三','四']}
# }

# print('%(A)s,%(B)%'%(l5))