练习题
一、元素分类
有如下值集合 [11,22,33,44,55,66,77,88,99,90...],将所有大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中。
即: {‘k1‘: 大于66的所有值, ‘k2‘: 小于66的所有值}
二、查找
查找列表中元素,移除每个元素的空格,并查找以 a或A开头 并且以 c 结尾的所有元素。
li = ["alec", " aric", "Alex", "Tony", "rain"]
tu = ("alec", " aric", "Alex", "Tony", "rain")
dic = {‘k1‘: "alex", ‘k2‘: ‘ aric‘, "k3": "Alex", "k4": "Tony"}
三、输出商品列表,用户输入序号,显示用户选中的商品
商品 li = ["手机", "电脑", ‘鼠标垫‘, ‘游艇‘]
四、购物车
功能要求:
- 要求用户输入总资产,例如:2000
- 显示商品列表,让用户根据序号选择商品,加入购物车
- 购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。
- 附加:可充值、某商品移除购物车
1 2 3 4 5 6 |
|
五、用户交互,显示省市县三级联动的选择
1 2 3 4 5 6 7 8 9 10 11 12 13 |
|
答案:
#!usr/bin/evn python # -*- coding:utf-8 -*- #1 dic={‘k1‘:[],‘k2‘:[]} li=[11,22,33,44,55,66,77,88,99,90] for i in li: if i>=66: dic[‘k1‘].append(i) else: dic[‘k2‘].append(i) print(dic) #2 li = ["aleb", " aric", "Alex", "Tony", "rain"] tu = ("alec", " aric", "Alex", "Tony", "rain") dic = {‘k1‘: "alex", ‘k2‘: ‘ aric‘, "k3": "Alex", "k4": "Tony"} for i in li: a=i.strip() if (a.startswith(‘a‘) or a.startswith(‘A‘)) and a.endswith(‘c‘): print(a) for j in tu: b=j.strip() if b.startswith(‘a‘) or b.startswith(‘A‘) and b.endswith(‘c‘): print(‘b-‘+b) for v in dic.values(): d=v.strip() #print(d,‘-‘) if (d.startswith(‘a‘) or b.startswith(‘A‘)) and b.endswith(‘c‘): print(‘d-‘+d) #3 li = ["手机", "电脑", ‘鼠标垫‘, ‘游艇‘] # a={} # for i,j in enumerate(li,1): # # a[i]=j # # num=int(input(‘blabla:‘)) # # print(a[num]) for i, j in enumerate(li, 1): print(i, j) while 1: num = int(input(‘blabla:‘)) if num > 0 and num <= len(li): print(li[num - 1]) else: print(‘null‘) #4 total_money = int(input(‘请输入总金额: ‘)) picked_car = [] picked_money = 0 goods = [ {"name": "电脑", "price": 1999}, {"name": "鼠标", "price": 10}, {"name": "游艇", "price": 20}, {"name": "美女", "price": 998}, ] goods_name = [] goods_name_price = {} for i in goods: a = i[‘name‘] b = i[‘price‘] goods_name.append(a) # print(a) goods_name_price[a] = b # print(goods_name_price) for j, k in enumerate(goods_name, 1): print(j, k) while 1: goods_num = input(‘请输入选中商品号,付款请输入【购买】: ‘) try: goods_num = int(goods_num) except ValueError: goods_num = ‘购买‘ try: picked_car.append(goods_name[goods_num - 1]) picked_money += goods_name_price[goods_name[goods_num - 1]] except TypeError: pass print(picked_money) print(picked_car) if goods_num == ‘购买‘ and total_money >= picked_money: print(‘购买成功,谢谢惠顾‘) break elif goods_num == ‘购买‘ and total_money < picked_money: user_choice = input(‘您的资金不足,请【充值】或者【移除】购物车内一些商品:‘) if user_choice == ‘充值‘: print(‘当前余额:‘ + total_money) total_money += int(input(‘请输入总金额: ‘)) print(‘充值后金额:‘ + total_money) continue elif user_choice == ‘移除‘: while 1: print(picked_car) del_choice = input(‘请输入要移除的商品,完事后输出【ok】继续付款:‘) del picked_car[del_choice] print(picked_car) if del_choice == ‘ok‘: break continue #5 dic = { "河北": { "石家庄": ["鹿泉", "藁城", "元氏"], "邯郸": ["永年", "涉县", "磁县"], } } for i in dic: print(i) a=dic[i] usip=str(input(‘输入省份: ‘)) for j in a: print(j) b=dic[i][j] usip2=str(input(‘输入市: ‘)) for k in b: print(k) usip2=str(input(‘输入县: ‘))
时间: 2024-12-20 01:05:49