以下代码是字典的查,增,改,删的基本使用方法。
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,否则返回Flase18 19 info['4'] = '司马懿'#更改指定的信息20 info['7'] = '吕布'#创建新的信息21 #删除22 del info['5']23 info.pop('7')24 info.popitem()#随机删除25 26 print(info)
以下代码是字典的多级嵌套的使用
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])
其他用法
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和keyfor k,v in info.items():#会先把dict转成list,数据里大时莫用 print(k,v)