keep码
度过大难,将有大成。 继续努力,终成大器。
 

 以下代码是字典的查,增,改,删的基本使用方法。

 1 #-*-coding:utf-8-*-
 2 _author_: Keep
 3 
 4 #字典是无序的
 5 info = {
 6     '1':'张飞',
 7     '2':'刘备',
 8     '3':'关羽',
 9     '4':'曹操',
10     '5':'赵子龙',
11     '6':'诸葛亮',
12 }
13 print(info)
14 #查找
15 #print(info['1'])#查找
16 print(info.get('6'))#查找
17 print('5' in info)#等同 py2.x 的 info.has_key('5')    查找字典里是否有,如果有返回True,否则返回Flase
18 
19 info['4'] = '司马懿'#更改指定的信息
20 info['7'] = '吕布'#创建新的信息
21 #删除
22 del info['5']
23 info.pop('7')
24 info.popitem()#随机删除
25 
26 print(info)
View Code

 以下代码是字典的多级嵌套的使用

 1 #-*-coding:utf-8-*-
 2 #_author_: Keep
 3 relation = {
 4     '曹操':{
 5         '曹昂':['字子脩','刘氏所生'],
 6         '曹丕':['字子恒','卞夫人嫡长子'],
 7         '曹彰':['字子文','武宣卞皇后第二子'],
 8         '曹值':['字子建','武宣卞皇后第三子']
 9     },
10     '刘备':{
11         '刘禅':['字公嗣','甘夫人所生'] ,
12         '刘永':['字公寿','吴懿之妹所生'] ,
13         '刘理':['字奉孝','生母不明']
14     },
15     '诸葛亮':{
16         '诸葛瞻':['字思远','生母不明']
17     }
18 }
19 relation['诸葛亮']['诸葛瞻'][1] += ',有待考察'#增加信息
20 print(relation)
21 print(relation['诸葛亮']['诸葛瞻'][1])
View Code

 其他用法

print(info.values())#返回字典的值
print(info.keys())#返回字典的key
setdefault的用法
relation.setdefault('司马懿',{'司马昭':['字子上']})#setdefault的用法,寻找字典中是否有指定寻找的,没有就新加入进去
print(relation)

 update用法

info = {
    '1':'张飞',
    '2':'刘备',
    '3':'关羽',
    '4':'曹操',
    '5':'赵子龙',
    '6':'诸葛亮',
}
a = {

    '1':'司马懿',
    '8':'曹丕',
    '9':'周瑜'
}
info.update(a)#有更新的就覆盖,没有的话就创建新的
print(info)

item用法

>>>print(info.items())#把字典转成列表
dict_items([('1', '司马懿'), ('2', '刘备'), ('3', '关羽'), ('4', '曹操'), ('5', '赵子龙'), ('6', '诸葛亮'), ('8', '曹丕'), ('9', '周瑜')])

 循环dict 

for i in info:
    print(i,info[i])#循环,打印value和key

for k,v in info.items():#会先把dict转成list,数据里大时莫用
    print(k,v)

  

 

 

posted on 2019-02-21 11:48  keep码  阅读(214)  评论(0编辑  收藏  举报