day6.python字典练习题

时间:2023-02-24 07:35:28
 1 1.有如下变量(tu是个元组),请实现要求的功能
 2         tu = (“alex”, [11, 22, {“k1”: ‘v1’, “k2”: [“age”, “name”], “k3”: (11,22,33)}, 44])
 3         a.讲述元组的特性
 4         b.请问tu变量中的第一个元素”alex”是否可被修改?
 5         c.请问tu变量中的”k2”对应的值是什么类型?是否可以被修改?如果可以,请在其中添加一个元素 “Seven”
 6             tu[1][2]['k2'].append("Seven")
 7         d.请问tu变量中的”k3”对应的值是什么类型?是否可以被修改?如果可以,请在其中添加一个元素 “Seven”
 8 
 9     2.字典dic,dic = {‘k1’: “v1”, “k2”: “v2”, “k3”: [11,22,33]}
10         a.请循环输出所有的value环输出所有的key
11             for i in dic:
12                 print(i)
13 
14         b. 请循环输出所有的value
15             for i in dic.values():
16                 print(i)
17 
18         c. 请循环输出所有的key和value
19                 for a,b in dic.items():
20                     print(a,b)
21 
22         d. 请在字典中添加一个键值对,”k4”: “v4”,输出添加后的字典
23                 dic['k4'] = "v4"
24                 print(dic)
25 
26         e. 请在修改字典中 “k1” 对应的值为 “alex”,输出修改后的字典
27                 dic['k1'] = "alex"
28                 print(dic)
29 
30         f. 请在k3对应的值中追加一个元素 44,输出修改后的字典
31                 dic['k3'].append(44) 
32                 print(dic)
33 
34         g. 请在k3对应的值的第 1 个位置插入个元素 18,输出修改后的字典
35                 dic['k3'].insert(0,18)
36                 print(dic)
37 
38     3.av_catalog = {                                                           
39         "欧美":{                                                               
40             "www.youporn.com": ["很多免费的,世界最大的","质量一般"],                       
41             "www.pornhub.com": ["很多免费的,也很大","质量比yourporn高点"],                
42             "letmedothistoyou.com": ["多是自拍,高质量图片很多","资源不多,更新慢"],             
43             "x-art.com":["质量很高,真的很高","全部收费,屌丝请绕过"]                           
44         },                                                                   
45         "日韩":{                                                               
46             "tokyo-hot":["质量怎样不清楚,个人已经不喜欢日韩范了","verygood"]                   
47         },                                                                   
48         "大陆":{                                                               
49             "1024":["全部免费,真好,好人一生平安","服务器在国外,慢"]                             
50         },                                                                   
51     }
52         a.给此 [“很多免费的,世界最大的”,”质量一般”]列表第二个位置插入一个 元素:’量很大’。
53         b.将此 [“质量很高,真的很高”,”全部收费,屌丝请绕过”]列表的 “全部收费,屌丝请绕过” 删除。
54         c.在此 [“质量很高,真的很高”,”全部收费,屌丝请绕过”]列表中添加”金老板最喜欢这个”。
55         d.将此[“质量怎样不清楚,个人已经不喜欢日韩范了”,”verygood”]列表的 “verygood”全部变成大写。
56         e.给’大陆’ 对应的字典添加一个键值对 ‘1048’ :[‘一天就封了’]
57         f.删除此”letmedothistoyou.com”: [“多是自拍,高质量图片很多”,”资源不多,更新慢”]键值对。
58         g.给此[“全部免费,真好,好人一生平安”,”服务器在国外,慢”]列表的第一个元素,加上一句话:’可以爬下来’
59 
60     4.有字符串 “k:1|k1:2|k2:3|k3:4” 处理成字典 {‘k’:1,’k1’:2….}
61         str1 = "k:1|k1:2|k2:3|k3:4"
62         str1 = str1.split('|')
63         dic = {}
64         for I in str1:
65             c = I.split(':')
66             dic[c[0]] = c[1]
67         print(dic)
68     
69     5.元素分类
70     有如下值li= [11,22,33,44,55,66,77,88,99,90],将所有大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中。
71     即: {‘k1’: 大于66的所有值列表, ‘k2’: 小于66的所有值列表}
72 
73     6.输出商品列表,用户输入序号,显示用户选中的商品(升级题)
74 
75         1.页面显示 序号 + 商品名称 + 商品价格,如:
76         1 电脑 1999
77         2 鼠标 10
78 79         2.用户输入选择的商品序号,然后打印商品名称及商品价格
80         3.如果用户输入的商品序号有误,则提示输入有误,并重新输入。
81         4.用户输入Q或者q,退出程序。
82         
83         shop = ["电脑 1999", "鼠标 10", "手机 1000", "耳机 99"]
84         for k,v in enumerate (shop,1):
85             print(k,v)
86 
87         while True:
88             inp = input("输入你想要的商品:")
89             if inp.lower() == "q":
90                 break
91             elif inp.isdigit() == False:
92                 print("请输入数字:")
93             elif int(inp) > len(shop):
94                 print("输入有误,重新输入")
95             else:
96                 print(shop[int(inp) - 1])