python day 5 dict

dict

dic = {"name":"jin",
"age":18,
"sex":"male",
}

增:

第一种: 有则覆盖 无则添加

dic['hobby'] = 'girl'

dic['name'] = 'wusir'

第二种:无则添加 有则不变

dic.setdefault('name','ritian')

dic.setdefault('hobby')

 

删:

第一种 pop 有返回值

dic.pop('age')

dic.pop('hobby')    #列表没有这个键,  报错

dic.pop('hobby',None)   #返回你设定的值

第二种 clear 清空内容

dic.clear()

第三种 del 可删除列表,也可指定键删除

del dic

del dic['name']

第四种 popitem  随机删除,有返回值

doc.popitem()   #随机删除,有返回值

 

改:

第一种: 直接改

dic['name'] = '太白'

第二种: 两个字典的改update 后面的字典覆盖添加到前面

dic = {"name":"jin","age":18,"sex":"male"}
dic2 = {"name":"alex","weight":75}

dic2.update(dic) # 将dic键值对,覆盖并添加到dic2

查:

第一种: dic['name1'] 

dic['name1']    #,如果键不存在,会报错

第二种:    dic.get('name1')    

dic.get('name1','没有此键值对')     #如果键不存在,默认返回None,可设定

 

dict的其他方法:

dic.keys() #输出类似列表的形式    

 dic.values()  #输出类似列表的形式  

  dic.items()  #输出元祖

一般输出键 :

for i in dic

 

 1 dic = {"name":"jin",
 2        "age":18,
 3        "sex":"male",
 4        }
 5 # print(dic)
 6 #哈希表:
 7 # print(hash('name'))
 8 # print(hash('fsagffsadgsdafgfdsagsadfgfag'))
 9 # print(hash('age'))
10 # 增
11 #第一种: 有则覆盖,无则添加
12 # dic['hobby'] = 'girl'
13 # print(dic)
14 # dic['name'] = 'wusir'
15 # print(dic)
16 #第二种 setdeafult 无则添加,有则不变。
17 # dic.setdefault('hobby')
18 # dic.setdefault('hobby','girl')
19 # dic.setdefault('name','ritian')
20 # print(dic)
21 
22 # 删
23 #pop  有返回值
24 # print(dic.pop('age'))
25 # print(dic)
26 # dic.pop('hobby')  # 报错
27 # print(dic.pop('hobby', None))  # 返回你设定的值
28 #clear 清空
29 # dic.clear()
30 # print(dic)
31 #del
32 # del dic
33 # print(dic)
34 # del dic['name']
35 # print(dic)
36 # dic.popitem()  # 随机删除 有返回值
37 # print(dic.popitem())
38 # print(dic)
39 
40 # 改
41 # dic['name'] = '太白'
42 # print(dic)
43 #两个字典的改
44 # dic = {"name":"jin","age":18,"sex":"male"}
45 # dic2 = {"name":"alex","weight":75}
46 # dic2.update(dic)  # 将dic键值对,覆盖并添加到dic2
47 # print(dic)
48 # print(dic2)
49 
50 # 查
51 # print(dic['name'])
52 # print(dic['name1']) # 报错
53 # print(dic.get('name'))
54 # print(dic.get('name1'))  # 默认返回None
55 # print(dic.get('name1','咩有此键值对'))  # 默认返回None
56 
57 # 其他方法:
58 #keys() values() items()
59 print(dic.keys(),type(dic.keys()))
60 print(dic.keys())
61 for i in dic.keys():
62     print(i)
63 for i in dic:
64     print(i)
65 li = list(dic.keys())
66 print(li)
67 print(dic.values())
68 for i in dic.values():
69     print(i)
70 print(dic.items())
71 for i in dic.items():
72     print(i)
73 #特殊类型 dict 转化 成list
74 # print(list(dic.keys()))
75 
76 #概念:分别赋值
77 # a,b = 2,3
78 # print(a,b)
79 # a,b = (2,3)
80 # print(a,b)
81 # a,b = [2,3]
82 # print(a,b)
83 # a = 4 ,b = 5
84 # a = 4
85 # b = 5
86 # a,b = b,a
87 # print(a,b)
88 # print(dic.items())
89 # for k,v in dic.items():
90 #     print(k,v)
dict的增删改查

 

dict的嵌套

# dic = {"name_list":['张三','lisi','隔壁王叔叔'],
# 'dic2':{'name':'太白','age':12},
# }
# 1 ,给列表追加一个元素:'旺旺'
# l1 = dic['name_list']
# l1.append('旺旺')
# dic['name_list'].append('旺旺')
# print(dic)
# ,2,给列表lisi全部大写
# print(dic['name_list'][1].upper())
# dic['name_list'][1] = dic['name_list'][1].upper()
# print(dic)
# 3,给dic2 对应的字典添加一个键值对:hobby:girl.
# dic['dic2']['hobby'] = 'girl'
# print(dic)

 

 



posted @ 2018-03-22 18:09  大白1#  阅读(46)  评论(0)    收藏  举报