day5 字典的增删改查、嵌套及升级等操作

1、昨日内容回顾及作业讲解
列表:增 append insert extend
      删 remove pop clear del
      改 li[索引] = '被修改的内容' li[切片]: '被修改的内容'
      查 for循环
      range
元组:
      sort(reverse = True)
      reverse()反转
      ps:列表里都是字符串,也是可以排序的,是按照字符串的首字母的ascii码排序的
         join: list---->str
         S.join(iterable)
             li = [1,2,3]
             s1 = str(li)
         split: str---->list

2、作业讲解:

1 lis = [2,3,'k',['qwe',20,['k1',['tt',3,'1']],89],'ab','adv']
2 #1、将列表中的'tt'变成大写(用两种方式)
3 # name = lis[3][2][1][0].upper()
4 # lis[3][2][1][0] = name
5 # print(lis)
6 lis[3][2][1][0] = lis[3][2][1][0].replace('tt','TT')
7 print(lis)

3、字典

数据类型划分:可变数据类型和不可变数据类型
不可变数据类型:元组,bool int str   可哈希
可变数据类型:list 字典 set          不可哈希
dict key 必须是不可变数据类型,可哈希,
    value: 任意数据类型
dict 优点:二分查找去查询
           存储大量的关系型数据
    特点:无序的(3.5及3.5之前)
 1 # dic = {
 2 #     'name':['大猛','小孟'],
 3 #     'py9':[{'num':71,
 4 #             'avg_age':18}],
 5 #     True:1,
 6 #     (1,2,3):'wuyiyi',
 7 #     2:'二哥',
 8 # }
 9 # print(dic)
10 dic1 = {'age': 18, 'name': 'jin', 'sex': 'male'}
11 #增:
12 # dic1['high'] = 185  #没有键值对,添加
13 # dic1['age'] = 16    #如果有键,则值覆盖
14 
15 # dic1.setdefault('weight')  # 有键值对,不做任何改变,没有才添加
16 # dic1.setdefault('weight',150)
17 # dic1.setdefault('name','二哥')
18 # print(dic1)
19 
20 #
21 # print(dic1.pop('age'))    # 有返回值,按键去删除
22 # print(dic1.pop('二哥','没有此键'))  # 可设置返回值
23 # print(dic1)
24 # dic1.popitem()  # 随机删除 有返回值 元组里面删除的是键值
25 # print(dic1)
26 
27 # del dic1['name']
28 # print(dic1)
29 # del dic1
30 # print(dic1)
31 
32 # dic1.clear() #清空字典
33 
34 #改,update
35 # dic1['age'] = 16
36 
37 # dic = {"name":"jin","age":18,"sex":"male"}
38 # dic2 = {"name":"alex","weight":75}
39 # dic2.update(dic)  # 将dic所有的键值对覆盖添加(相同的覆盖,没有的添加)到dic2中
40 # print(dic)
41 # print(dic2)
42 
43 #
44 # print(dic1.keys(),type(dic1.keys()))
45 # print(dic1.values())
46 # print(dic1.items())
47 
48 # for i in dic1:
49 #     print(i)  #默认打印键
50 # for i in dic1.keys():
51 #     print(i)
52 
53 # for i in dic1.values():
54 #     print(i)
55 
56 # a,b = 1,2
57 # print(a,b)
58 
59 # a = 1
60 # b = 2
61 # a,b = b,a
62 # print(a,b)
63 # a,b = [1,2]
64 # a,b = [1,2],[2,3]
65 # a,b = (2,3)
66 # print(a,b)  # 看最小单位
67 # for k,v in dic1.items():
68 #     print(k,v)
69 
70 # v1 = dic1['name']
71 # print(v1)
72 
73 # v2 = dic1['name1']  #报错
74 # print(v2)
75 
76 print(dic1.get('name1','没有这个键'))

4、字典的嵌套

dic = {
    'name':['alex','wusir','taibai'],
    'py9':{
        'time':'1213',
        'learn_monkey':19800,
        'addr':'CBD',
    },
    'age':21
}
# dic['age'] = 56
# print(dic['name'])
# dic['name'].append('ritian')

#将wusir改成大写
# dic['name'][1] = dic['name'][1].upper()
# print(dic)

#在py9里添加female:6键值对
# dic['py9']['female'] = 6
# print(dic)

info = input('>>>') # fhdklah123rfdj12fdjs13
for i in info:
    if i.isalpha():
        info = info.replace(i," ")
l = info.split()
print(len(l))

 

posted @ 2019-03-13 17:31  taoziya  阅读(99)  评论(0)    收藏  举报