【主要内容】
1. dict 用大括号{} 括起来. 内部使用key:value的形式来保存数据 {'jay':'周杰伦', "jj":'林俊杰'} 注意:字典的key必须是可哈希的. 不可变的, value 没有限制 不是按照我们保存的顺序保存的, 无序的2. 增删改查 1. dict[不存在的key] = value, setdefault() 2. pop(key). del dict[key]. popitem(), clear() 3. dict[存在的key] = 新值, d1.update(d2) 把d2的k-v更新到d1中 4. get(key, 默认值), setdefault(), dict[key]3. 字典的常用方法 1. keys() 返回所有字典的key的集合(高仿列表) 2. values() 返回所有的value的集合 3. items() 返回键值对. 元组 解构: a, b = (1, 2)4. 字典的嵌套
【代码】
1、字典的常用操作
1 dic = {"及时雨":"宋江", "易大师":"剑圣", "维恩":"暗影猎手"}
2 # print(dic.keys()) # 拿到所有的key, 返回key的集合. 像是列表. 但是不是列表
3 #
4 # for key in dic.keys(): # 可以进行迭代循环
5 # print(key)
6
7 # print(dic.values())
8 # for value in dic.values():
9 # print(value)
10 # dic = {"及时雨":"宋江", "易大师":"剑圣", "维恩":"暗影猎手"}
11 # print(dic.items()) # 拿到键值对
12 # # 遍历dict
13 # for k, v in dic.items():
14 # print(k , v)
15
16
17
18 # for k, v in dic.items():
19 # # = item # (key, value)
20 # # print(item) # (key, value)
21 # print(k,v)
22
23 # 解构 . 解包
24 # a, b = (1, 2)
25 # print(a)
26 # print(b)
27
28 # a, b, c = ("马化腾", "马云", "马良")
29 # print(b)
30
31 # a, b = [1, 2]
32 # print(a, b)
2、字典的嵌套
1 dic = {
2 "name":"汪峰",
3 "age": 58,
4 "wife":{
5 "name":"国际章",
6 "salary": 180000,
7 "age": 37
8 },
9 "children":[
10 {"name":"老大", "age": 18},
11 {"name":"老二", "age": 118}
12 ]
13 }
14 print(dic["children"][1]["age"])
15
16 print(dic["wife"]['salary'])
3、字典的for循环
1 dic = {1: 'a', 2:'b', 3:'c'}
2 for a in dic: # 直接循环字典.拿到的是key
3
4 print(a)
5 print(dic[a])
4、作业与练习
1 '''
2 # 把班级学生数学考试成绩录入到一个列表中,并求平均值,要求录入的时候要带着学生姓名和成绩,例如:张三_44
3 lst=[]
4 while 1:
5 stu = input("请输入学生姓名和成绩(姓名_成绩),输入Q或q退出录入:")
6 if stu.upper() == 'Q':
7 break
8 lst.append(stu)
9 sum=0
10 for el in lst:
11 li=el.split("_")
12 sum+=int(li[1])
13 print(sum/len(lst))
14
15 #*****************本次内容练习**********************
16 dic={"及时雨":"宋江","易大师":"剑圣","维恩":"暗影猎手"}
17 for k,v in dic.items():
18 print(k,v)
19 '''
20 dic={
21 "name":"汪峰",
22 "age":58,
23 "wife":{
24 "name":"国际章",
25 "salay":18000,
26 "age":37
27 },
28 "children":[
29 {"name":"老大","age":18} ,
30 {"name":"老二","age":8}
31 ]
32 }
33 print(dic["children"][1]["age"])
来源:https://www.cnblogs.com/fengxb1213/p/12290625.html