python 字典的魔法 day12

创建字典对象

dict

info ={'k1':'v1','k2':'v2'#键值对}

字典的value可以时任何值

info = {
    'k1':18,
    'k2':True,
    'k3':[
        11,22,33,{'k1':'vv1','k2':'vv2'}
        ],
    'k4':(11,22,33,44)
}
print(info)

字符,数字,元组可以作为key,列表,布尔值,字典不能作为key

info = {
    1:'asd',
    'k1':'asdf',
    (11,22,):'asdfg'
}
print(info)

字典无序

从字典中取值

info = {
    'k1':18,
    'k2':True,
    'k3':[
        11,22,33,{'k1':(11,22,33),'k2':'vv2'}
        ],
    'k4':(11,22,33,44)
}
v = info['k3'][3]['k1'][2]
print(v)

删除一个元素

info = {
    'k1':18,
    'k2':True,
    'k3':[
        11,22,33,{'k1':(11,22,33),'k2':'vv2'}
        ],
    'k4':(11,22,33,44)
}
del info['k3']
print(info)
info = {
    'k1':18,
    'k2':True,
    'k3':[
        11,22,33,{'k1':(11,22,33),'k2':'vv2'}
        ],
    'k4':(11,22,33,44)
}
del info['k3'][3]['k1']
print(info)

默认for循环只有key

info = {
    'k1':18,
    'k2':True,
    'k3':[
        11,22,33,{'k1':(11,22,33),'k2':'vv2'}
        ],
    'k4':(11,22,33,44)
}
for item in info:
    print(item)

获取值

info = {
    'k1':18,
    'k2':True,
    'k3':[
        11,22,33,{'k1':(11,22,33),'k2':'vv2'}
        ],
    'k4':(11,22,33,44)
}
for item in info.values():
    print(item)

获取键值对

info = {
    'k1':18,
    'k2':True,
    'k3':[
        11,22,33,{'k1':(11,22,33),'k2':'vv2'}
        ],
    'k4':(11,22,33,44)
}
for item in info.items():
    print(item)

获取key和值

info = {
    'k1':18,
    'k2':True,
    'k3':[
        11,22,33,{'k1':(11,22,33),'k2':'vv2'}
        ],
    'k4':(11,22,33,44)
}
for k,v in info.items():
    print(k,v)

根据序列生成字典,并指定统一的值

v = dict.fromkeys(['k1',123,'999'],123)
print(v)

取字典值

dic = {'k1':'123'}
v = dic['k1']
print(v)
#如取不存在的key直接报错
dic = {'k1':'123','k2':223}
v = dic.get('k1111',111)
print(v)
#如不存在key,返回逗号后面的值

删除一个元素并取出,或删除不了返回一个默认值

dic = {'k1':'123','k2':223}
v = dic.pop('k1')
print(dic,v)
dic = {'k1':'123','k2':223}
v = dic.pop('k1111',455)
print(dic,v)

设置值,如果存在,获取当前key对应的值

dic = {'k1':'123','k2':223}
v = dic.setdefault('k111','3333')
print(dic,v)

更新字典

dic = {'k1':'123','k2':223}
dic.update({'k1':'3333','k3':444})
print(dic)
dic = {'k1':'123','k2':223}
dic.update(k1 = 3333,k3 = 444)
print(dic)

猜你喜欢

转载自www.cnblogs.com/wangleiyifan/p/9170613.html