• 字典,集合,列表混合使用需注意:


    #1,有如下变量(tu是个元祖),请实现要求的功能
    #tu= ("alex", [11, 22, {"k1": 'v1', "k2": ["age", "name"], "k3": (11,22,33)}, 44])
    # a. 讲述元祖的特性
    # b. 请问tu变量中的第一个元素 "alex" 是否可被修改?
    # c. 请问tu变量中的"k2"对应的值是什么类型?是否可以被修改?如果可以,请在其中添加一个元素 "Seven"
    # d. 请问tu变量中的"k3"对应的值是什么类型?是否可以被修改?如果可以,请在其中添加一个元素 "Seven"
    #a.只读列表,只可读不可修改,元祖中的内部子元素不可修改,若子元素为列表则可修改的.
    #b.alexy元素不可修改
    #c."k2"对应的值是列表类型,可以被修改
    # for k, v in tu[1][2].items():
    #     if k=="k2":
    #         v.append("Seven")
    #         v=tu[1][2].values()
    # # print(tu)
    # tu[1][2]["k2"]=["age","name","Seven"]
    # print(tu)
    #d."k3"对应的值是元祖类型,无法被修改
    #2, 字典dic,dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}
    # a. 请循环输出所有的key
    # b. 请循环输出所有的value
    #  	c. 请循环输出所有的key和value
    # d. 请在字典中添加一个键值对,"k4": "v4",输出添加后的字典
    # e. 请在修改字典中 "k1" 对应的值为 "alex",输出修改后的字典
    # f. 请在k3对应的值中追加一个元素 44,输出修改后的字典
    # g. 请在k3对应的值的第 1 个位置插入个元素 18,输出修改后的字典
    #dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}
    # for key in dic.keys():
    #     print(key)
    # for value in dic.values():
    #     print(value)
    # for k,v in dic.items():
    #     print(k,v)
    # dic["k4"]="v4"
    # print(dic)
    # dic["k1"]="alex"
    # print(dic)
    # dic["k3"]=[11,22,33,44]
    # print(dic)
    # dic["k3"].append(44)
    # print(dic)
    # dic["k3"].insert(0,18)
    # print(dic)
    
    
    # 3,av_catalog = {
    #     "欧美":{
    #         "www.youporn.com": ["很多免费的,世界最大的","质量一般"],
    #         "www.pornhub.com": ["很多免费的,也很大","质量比yourporn高点"],
    #         "letmedothistoyou.com": ["多是自拍,高质量图片很多","资源不多,更新慢"],
    #         "x-art.com":["质量很高,真的很高","全部收费,屌丝请绕过"]
    #     },
    #     "日韩":{
    #         "tokyo-hot":["质量怎样不清楚,个人已经不喜欢日韩范了","verygood"]
    #     },
    #     "大陆":{
    #         "1024":["全部免费,真好,好人一生平安","服务器在国外,慢"]
    #     }
    # }
    #
    #     a,给此 ["很多免费的,世界最大的","质量一般"]列表第二个位置插入一个  元素:'量很大'。
    #     b,将此 ["质量很高,真的很高","全部收费,屌丝请绕过"]列表的 "全部收费,屌丝请绕过" 删除。
    #     c,在此 ["质量很高,真的很高","全部收费,屌丝请绕过"]列表中添加"金老板最喜欢这个"。
    #     d,将此["质量怎样不清楚,个人已经不喜欢日韩范了","verygood"]列表的 "verygood"全部变成大写。
    # e,给'大陆' 对应的字典添加一个键值对 '1048' :['一天就封了']
    # f,删除此"letmedothistoyou.com": ["多是自拍,高质量图片很多","资源不多,更新慢"]键值对。
    # g,给此["全部免费,真好,好人一生平安","服务器在国外,慢"]列表的第一个元素,加上一句话:'可以爬下来'
    # av_catalog = {
    #     "欧美":{
    #         "www.youporn.com": ["很多免费的,世界最大的","质量一般"],
    #         "www.pornhub.com": ["很多免费的,也很大","质量比yourporn高点"],
    #         "letmedothistoyou.com": ["多是自拍,高质量图片很多","资源不多,更新慢"],
    #         "x-art.com":["质量很高,真的很高","全部收费,屌丝请绕过"]
    #     },
    #     "日韩":{
    #         "tokyo-hot":["质量怎样不清楚,个人已经不喜欢日韩范了","verygood"]
    #     },
    #     "大陆":{
    #         "1024":["全部免费,真好,好人一生平安","服务器在国外,慢"]
    #     }
    # }
    #a.
    # av_catalog["欧美"]["www.youporn.com"].insert(1,"量很大")
    # print(av_catalog)
    #b
    # av_catalog["欧美"]["x-art.com"].pop(1)
    # print(av_catalog)
    #c
    # av_catalog["欧美"]["x-art.com"].append("金老板最喜欢这个")
    # print(av_catalog)
    #d
    # av_catalog["日韩"]["tokyo-hot"][1]=av_catalog["日韩"]["tokyo-hot"][1].upper()
    # print(av_catalog)
    #e
    # av_catalog["大陆"]["1048"]="一天就被封了"
    # print(av_catalog)
    #f
    # av_catalog["欧美"].pop("letmedothistoyou.com")
    # print(av_catalog)
    #g
    # av_catalog["大陆"]["1024"][0]=av_catalog["大陆"]["1024"][0]+'可以爬下来'
    # print(av_catalog)
    #4、有字符串 "k:1|k1:2|k2:3|k3:4" 处理成字典 {'k':1,'k1':2....}  (升级题)
    # s="k:1|k1:2|k2:3|k3:4"
    # # s1=s.replace(":","")
    # # lst=s1.split("|")
    # # dic={}      #[K1,K12,K23,K34]
    # # for i in lst:
    # #    # dic[str(i[0])]=i[1]
    # #     dic.setdefault(i[0:len(i)-1],i[-1])
    # # print(dic)
    #第一种方法
    
    # s1 = "k:1|k1:2|k2:3|k3:4"
    # d = {}
    # # print(s1)
    # s2 = s1.split('|')
    # print(s2)
    # for n in s2:
    #     n1 = n.split(":")
    #     d[str(n1[0])] = n1[1]
    # print(d)
    
    #第二种方法
    # s1 = "k:1|k1:2|k2:3|k3:4"
    # d = {}
    # # print(s1)
    # s2 = s1.split('|')
    # print(s2)
    # for n in s2:
    #     n1 = n.split(":")
    #     d.setdefault(n1[0], n1[1])
    # print(d)
    
    
    #第三种方法;
    # s1 = "k:1|k1:2|k2:3|k3:4"
    # d = {}
    # # print(s1)
    # s2 = s1.split('|')
    # print(s2)
    # for n in s2:
    #     n1 = n.split(":")
    #     d[n1[0]] = n1[1]
    # print(d)
    
    #5、元素分类
    # 有如下值li= [11,22,33,44,55,66,77,88,99,90],将所有大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中。
    # 即: {'k1': 大于66的所有值列表, 'k2': 小于66的所有值列表}
    # li= [11,22,33,44,55,66,77,88,99,90]
    # dic={'k1': '大于66的所有值列表', 'k2': '小于66的所有值列表'}
    # li1=[]
    # li2=[]
    # for el in li:
    #     if el>66:
    #         li1.append(el)
    #     else:
    #         li2.append(el)
    # dic['k1']=li1
    # dic['k2']=li2
    # print(dic)
    第二种方法:
    # li= [11,22,33,44,55,66,77,88,99,90]
    # dic = {}
    # for el in li:
    #     if el > 66:
    #         dic.setdefault("k1", []).append(el) # 1. 新增, 2. 查询
    #     else:
    #         dic.setdefault("k2", []).append(el)  # 1. 新增, 2. 查询
    # print(dic)
    
    # 6、输出商品列表,用户输入序号,显示用户选中的商品(升级题) # # 商品列表: # goods = [{"name": "电脑", "price": 1999}, # {"name": "鼠标", "price": 10}, # {"name": "游艇", "price": 20}, # {"name": "美女", "price": 998}, ] # # 要求: # 1:页面显示 # 序号 + 商品名称 + 商品价格,如: # 1 # 电脑 # 1999 # 2 # 鼠标 # 10 # … # 2:用户输入选择的商品序号,然后打印商品名称及商品价格 # 3:如果用户输入的商品序号有误,则提示输入有误,并重新输入。 # 4:用户输入Q或者q,退出程序。 goods = [{"name": "电脑", "price": 1999}, {"name": "鼠标", "price": 10}, {"name": "游艇", "price": 20}, {"name": "美女", "price": 998}, ] # for i in goods: # print(goods.index(i)+1,i["name"],i["price"]) # while 1: # content =input("用户输入的序号:") # if content.upper()=="Q": # break # if int(content)<=len(goods): # s=int(content) # print(goods[s-1]["name"],goods[s-1]["price"]) # else: # print("输入有误") # continue
    # goods = [{"name": "电脑", "price": 1999},
    #          {"name": "鼠标", "price": 10},
    #          {"name": "游艇", "price": 20},
    #          {"name": "美女", "price": 998}]
    #
    # for i in range(len(goods)):
    #     good = goods[i]
    #     print(i+1, good['name'], good['price'])
    #
    # while 1:
    #     content = input("请输入你要买的商品:")
    #     if content.upper() == "Q":
    #         break
    #     index = int(content) - 1    # 索引
    #     if index > len(goods) - 1 or index < 0:  # 调试
    #         print("输入有误. 请重新输入:")
    #         continue
    #     print(goods[index]['name'], goods[index]['price'])
    
  • 相关阅读:
    02-Node.js学习笔记-系统模块fs文件操作
    01-Node.js学习笔记-模块成员的导出导入
    Dom对象与jQuery对象的互转
    JDBC02----JDBC执行CURD操作
    JDBC00-----学习说明
    JDBC01-----JDBC的基本使用
    spring16-----XML命名空间和Spring配置文件中的头
    30 . (Java)面向对象编程六大基本原则
    spring15----AOP之通知顺序
    spring14-----AOP之通知参数
  • 原文地址:https://www.cnblogs.com/zhangdaye/p/9289270.html
Copyright © 2020-2023  润新知