学习链接:https://www.bilibili.com/video/BV1SE411N7Hi?p=32 题目链接:https://gitee.com/old_boy_education_python_28/teaching_plan/issues/I161EI 此内容仅为个人兴趣学习使用 #!/usr/bin/env python # -*- coding:utf-8 -*- # 1.写代码,有如下列表,按照要求实现每一个功能 # li = ["alex", "WuSir", "meet","女神","太白"] # 1. 计算列表的长度并输出 print(li.__len__()) # 2.列表中追加元素"seven",并输出添加后的列表 li.append("seven") print(li) # 3.请在列表的第1个位置插入元素"Tony",并输出添加后的列表 li.insert(0,"Tony") print(li) # 4.请修改列表第2个位置的元素为"Kelly",并输出修改后的列表 li[1]="Kelly" print(li) # 5.请删除列表中的元素"meet",并输出删除后的列表 li.pop(2) print (li) # 6.请删除列表中的第2个元素,并输出删除的元素和删除元素后的列表 l=li.pop(1) print(l) print(li) # 7.请删除列表中的第2至4个元素,并输出删除元素后的列表 del li[1:5] print(li) # # 2.写代码,有如下列表,利用切片实现每一个功能 # li = [1, 3, 2, "a", 4, "b", 5,"c"] # 通过对li列表的切片形成新的列表l1,l1 = [1,3,2] l1=li[0:3] print(l1) # 通过对li列表的切片形成新的列表l3,l3 = ["1,2,4,5] l3=li[::2] print(l3) # 通过对li列表的切片形成新的列表l4,l4 = [3,"a","b"] print(li[1:6:2]) # 通过对li列表的切片形成新的列表l5,l5 = ["c"] print(li[-1]) # 通过对li列表的切片形成新的列表l6,l6 = ["b","a",3] print(li[5:0:-2]) # 3.写代码,有如下列表,按照要求实现每一个功能。 # lis = [2, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"] # 将列表lis中的"tt"变成大写。 lis[2][2][1][0]=lis[2][2][1][0].upper() print(lis) # 将列表中的数字3变成字符串"100"。 lis[2][2][1][1]="100" print(lis) # 将列表中的字符串"1"变成数字101。 lis[2][2][1][2]=101 print(lis) # # 4.请将元组 v1 = (11,22,33,44,55,66,77,88,99) 中的所有偶数索引位置的元素 追加到列表 # v3 = [44,55,66] 中。 v1 = (11,22,33,44,55,66,77,88,99) v3 = [44,55,66] v2=v1[1::2] print(v2) v3+=list(v2) print(v3) # 5.字典dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]} dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]} # a. 请循环输出所有的key for k in dic: print(k) # b. 请循环输出所有的value' for v in dic: print(v) # c. 请循环输出所有的key和value for k,v in dic: print(k,v) # d. 请在字典中添加一个键值对,"k4": "v4",输出添加后的字典 dic["k4"]="v4" print(dic) # e. 请在修改字典中 "k1" 对应的值为 "alex",输出修改后的字典 dic["k1"]="alex" print(dic) # f. 请在k3对应的值中追加一个元素 44,输出修改后的字典 dic["k3"].append(44) print(dic) # g. 请在k3对应的值的第 1 个位置插入个元素 18,输出修改后的字典 dic["k3"].insert(0,18) print (dic) # # 6.请用代码实现: li = ["alex", "wusir", "meet"] str="" count=li.__len__() c1=1 # 利用下划线将列表的每一个元素拼接成字符串"alex_wusir_meet" for i in li: str += i if c1!=count: str+="_" c1+=1 print(str) #方法二:str=str.strip("_") #方法三:print(str[:-1] # # 7.利用for循环和range打印出下面列表的索引。 # li = ["alex", "WuSir", "ritian", "meet", "wenzhou"] print(li) c=li.__len__() for i in range(c): print(i) # 8.查找列表li中的元素,移除每个元素的空格,并找出以"A"或者"a"开头,并以"c"结尾的所有元素,并添加到一个新列表中,最后循环打印这个新列表。 li = ["TaiBai ", "alexC", "AbC ", "egon", " riTiAn", "WuSir", " aqc"] li1=[] for i in range(li.__len__()): #li[i]=li[i].strip() li[i]=li[i].replace(" ","") if li[i].startswith( "a")or li[i].startswith( "A") : if li[i].endswith("c"): li1.append(li[i]) print("li:", li) print("li1:", li1) # # 9.有如下字典,请按照一下的需求对字典进行操作(20分钟) av_catalog = { "欧美":{ "www.宝元.com": ["很多免费的,世界最大的","质量一般"], "www.alex.com": ["很多免费的,也很大","质量挺好"], "oldboy.com": ["多是自拍,高质量图片很多","资源不多,更新慢"], "hao222.com":["质量很高,真的很高","全部收费,屌丝请绕过"] }, "日韩":{ "tokyo-hot":["质量怎样不清楚,个人已经不喜欢日韩范了","verygood"] }, "大陆":{ "1024":["全部免费,真好,好人一生平安","服务器在国外,慢"] } } # a.给此 ["很多免费的,世界最大的","质量一般"]列表第二个位置插入一个 元素:'量很大'。 av_catalog["欧美"]["www.宝元.com"].insert(1,'量很大') print(av_catalog) # b.将此 ["质量很高,真的很高","全部收费,屌丝请绕过"]列表的 "全部收费,屌丝请绕过" 删除。 del av_catalog["欧美"]["hao222.com"][1] print (av_catalog) # c.将此["质量怎样不清楚,个人已经不喜欢日韩范了","verygood"]列表的 "verygood"全部变成大写。 av_catalog["日韩"]["tokyo-hot"][1]=av_catalog["日韩"]["tokyo-hot"][1].upper() print(av_catalog) # d.给 '大陆' 对应的字典添加一个键值对 '1048' :['一天就封了'] av_catalog["大陆"].update({ '1048' :['一天就封了']}) print(av_catalog) # e.删除这个键值对:"oldboy.com": ["多是自拍,高质量图片很多","资源不多,更新慢"] del av_catalog["欧美"]["oldboy.com"] print (av_catalog) # f.给此["全部免费,真好,好人一生平安","服务器在国外,慢"]列表的第一个元素对应的字符串,加上一句话:'可以爬下来' av_catalog["大陆"]["1024"][0]+='可以爬下来' print(av_catalog) # # 10.有如下值 li= [11,22,33,44,55,77,88,99,90] ,将所有大于 66 的值保存至字典的第一个key对应的列表中,将小于 66 的值保存至第二个key对应的列表中。(15分钟) li= [11,22,33,44,55,77,88,99,90] result = {'k1':[],'k2':[]} for i in li: if i>66: result["k1"].append(i) elif i<66: result["k2"].append((i)) print (result) # # 11.开发敏感词语过滤程序,提示用户输入评论内容,如果用户输入的内容中包含特殊的字符:(30分钟) # 敏感词列表 li = ["老师苍", "东京比较热", "武兰", "波多"] l=[] # 则将用户输入的内容中的敏感词汇替换成等长度的*(老师苍就替换***),并添加到一个列表中;如果用户输入的内容没有敏感词汇,则直接添加到上述的列表中。 # str=input("enter sth:").strip() # for i in li: # k="" # if i in str: # str=str.replace(i,len(i)*'*') # l.append(str) # print (l) # # 12.有字符串"k: 1|k1:2|k2:3 |k3 :4" 处理成字典 {'k':1,'k1':2,'k3':4} # 写代码(30分钟) str="k: 1|k1:2|k2:3 |k3 :4" dic={} str1=str.split("|") for i in str.split("|"): k,v=i.split(":") dic[k]=v print("dic:",dic) # 13.看代码写结果 # v = {} for index in range(10): v['users'] = index print(v) # 14.输出商品列表,用户输入序号,显示用户选中的商品 (明天可以继续写) # """ # 商品列表: goods = [ {"name": "电脑", "price": 1999}, {"name": "鼠标", "price": 10}, {"name": "游艇", "price": 20}, {"name": "美女", "price": 998} ] # 要求: # 1:页面显示 序号 + 商品名称 + 商品价格,如: # 1 电脑 1999 # 2 鼠标 10 size=goods.__len__() for i in range(size): print(i+1,": ",goods[i]["name"]," ",goods[i]["price"]) # 2:用户输入选择的商品序号,然后打印商品名称及商品价格 choice=input("输入商品序号:Q或者q退出") while choice!="Q"and choice!= "q": if choice.isalpha(): print("请输入数字") else: choice1=int(choice) if choice1>size or choice1<0: print("没有此商品序号") else: print( goods[choice1-1]["name"], " ", goods[choice1-1]["price"]) choice = input("输入商品序号:-1退出") # 3:如果用户输入的商品序号有误,则提示输入有误,并重新输入。 # 4:用户输入Q或者q,退出程序。 # """