python_dict字典的增删改查

#coding=utf-8

'''
数据类型划分: 可变数据类型 , 不可变数据类型
不可更改数据类型: 元祖,bool,str,int 可哈希
可变数据类型 :list ,dict, 不可哈希
dict key 必须是不可变数据类型 可哈希
value 任意数据类型
dict 优势:
二分查找去查询
储存大量的关系数据
dict特点:
它是无序的(3.5-3.5之前)
'''
 dic ={
     'name':['打蒙','小梦'],
     'py9':[{'num':71,'age_avg':18}],
     True : 1,
    (1,2,3):'wuyiqi',
     2:'TWO',
 }
print(dic)

# 增
dic1  = {'name':'shuai','age':19,'sex':'man'}
dic1['height']=185   #没有键值对,添加
dic1['age'] = 16    #有这个键就覆盖
dic1.setdefault('weght',150)  # 有键值对,不做任何改变,没有才添加
# 删除
dic1.pop('age')  #有返回值,按键去删除
dic1.pop('age','没有此键')  #有返回值,按键去删除,可设置返回值
dic1.popitem()#随机删除,3.6默认从最后一个删除,返回元祖形式
# dic1.clear() 清空
# del dic1 删除
#改  update
dic2={'like':'pingpang'}
dic2.update(dic1)  #有就覆盖,没有就更新进去
print(dic1)
print(dic2)
# 查.
print(dic1.keys())
print(dic1.values())
print(dic1.items())
'''
dict_keys(['name', 'sex', 'height']) 键
dict_values(['shuai', 'man', 185])  值
dict_items([('name', 'shuai'), ('sex', 'man'), ('height', 185)])列表元祖
'''
for i in dic1.keys():
    print(i)
for j in dic1.values():
    print(j)
for c,v in dic1.items():
    print(c,v)下面就是结果,一一对应
'''
name shuai
sex man
height 185
'''
v1 = dic1['name']
print(v1)

#get 查询是否存在键
v2=dic1.get('name1','meiy')#有返回值,可自定义
print(v2)

特别注意:

get ,,  pop  兼有返回值,可在查询之时,判断是否存在此键.

posted @ 2018-08-27 11:24  王学长  阅读(30638)  评论(0编辑  收藏  举报