八月五号作业
# 1.去重并且保留原来的元素顺序 # l=['a','b',1,'a','a'] """ l=['a','b',1,'a','a'] nl = [] for i in l: if i not in nl: nl.append(i) print(nl) """ # # 针对不可变类型,并且保证顺序则需要我们自己写代码实现,例如 # l=[ # {'name':'lili','age':18,'sex':'male'}, # {'name':'jack','age':73,'sex':'male'}, # {'name':'tom','age':20,'sex':'female'}, # {'name':'lili','age':18,'sex':'male'}, # {'name':'lili','age':18,'sex':'male'}, # ] ''' l=[ {'name':'lili','age':18,'sex':'male'}, {'name':'jack','age':73,'sex':'male'}, {'name':'tom','age':20,'sex':'female'}, {'name':'lili','age':18,'sex':'male'}, {'name':'lili','age':18,'sex':'male'}, ] nl = [] for i in l: if i not in nl: nl.append(i) print(nl) ''' # 2.利用集合关系求答案 # """ # 一.关系运算 # 有如下两个集合,pythons是报名python课程的学员名字集合,linuxs是报名linux课程的学员名字集合 pythons={'jason','egon','kevin','ricky','gangdan','biubiu'} linuxs={'kermit','tony','gangdan'} # 1. 求出即报名python又报名linux课程的学员名字集合 """ l = pythons & linuxs print(l) """ # 2. 求出所有报名的学生名字集合 ''' l = pythons | linuxs print(l) ''' # 3. 求出只报名python课程的学员名字 ''' l = pythons - linuxs print(l) ''' # 4. 求出没有同时这两门课程的学员名字集合 ''' l = pythons ^ linuxs print(l) ''' # """ # # 3.有如下值集合 [11,22,33,44,55,66,77,88,99,90...],将所有大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中 # 即: {'k1': 大于66的所有值, 'k2': 小于66的所有值} ''' l = [11,22,33,44,55,66,77,88,99,90] d = {"k1":[],"k2":[]} for i in l: if i > 66: d["k1"].append(i) else: d["k2"].append(i) print(d) ''' # 4.统计s='hello alex alex say hello sb sb'中每个单词的个数 # 结果如:{'hello': 2, 'alex': 2, 'say': 1, 'sb': 2} ''' s='hello alex alex say hello sb sb' l = set(s.split(" ")) d = {} for i in l: d[i] = s.count(i) print(d) ''' # 5.扩展题(尽量写) # #简单购物车,要求如下: # 实现打印商品详细信息,用户输入商品名和购买个数,则将商品名,价格,购买个数加入购物列表,如果输入为空或其他非法输入则要求用户重新输入 ''' msg_dic={ 'apple':10, 'tesla':100000, 'mac':3000, 'lenovo':30000, 'chicken':10, } a = True #锚 while a: #主程序 cart = [] #购物车 for i in msg_dic: #打印目录 print("%s,%s"%(i,msg_dic[i])) commodity = input("exit退出\n请输入需要商品的名称").strip() #商品选择输入 if commodity == 'exit': break elif commodity not in msg_dic: print("请把眼睛给有需要的人") else: while True: #选择商品后 num = input("需要几个").strip() if num == "exit": a = False break elif num.isdigit() == True: #打印并添加购物车操作 num = int(num) cart.append([commodity,num,num * msg_dic[commodity]]) print("%s个%s共%s元,已加入购物车"%(num,commodity,num * msg_dic[commodity])) print(cart) break else: print("你来买个试试") ''' # 以前写的比较完整的购物车: https://www.cnblogs.com/shof/p/13160743.html