草稿(代码未补充完毕)
a. 元素分类
#追加练习 有如下值集合 v1 = [11,22,33,44,55,66,77,88,99,90], 将所有大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中。 即: {'k1': 大于66的所有值, 'k2': 小于66的所有值} v2 = {'k1': [],'k2':[] }#!/usr/bin/python # -*- coding utf8 -*- V1 = [11,22,33,44,55,66,77,88,99,90] V2=[] V3=[] print(V1) for item in V1: print(item) if item > 66: V2.append(item) else: V2.append(item) VD = {'K1': V1, 'K2': V2} print(VD) #注意变量格式 b. 功能要求: v = 2000 要求用户输入总资产,例如:2000 显示商品列表,让用户根据序号选择商品,加入购物车 购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。 goods = [ {"name": "电脑", "price": 1999}, {"name": "鼠标", "price": 10}, {"name": "游艇", "price": 20}, {"name": "美女", "price": 998}, ] num = input('>>>') # 1 num = int(num)
goods[num]['price']
goods = [ {"name": "电脑", "price": 1999}, {"name": "鼠标", "price": 10}, {"name": "游艇", "price": 20}, {"name": "美女", "price": 998}, ] sum_num = input('请输入你的总资产') i = 1 for item in goods: print(i) i += 1 for k, v in item.items(): if k == 'name': print("商品名称:", item[k]) elif k == 'price': print("商品价格:", item[k]) print('--------') goods_name = input('请输入要购买的商品编号: ') len_val = len(goods_name) i = 0 sum_goods = 0 while i < len_val: val = int(goods_name[i]) price = int(goods[int(val) - 1]['price']) sum_goods += price i += 1 result = int(sum_num) - int(sum_goods) if result >= 0: print('购买成功') else: print("钱不够了") 此示例的高级扩展参考: http://blog.csdn.net/wuxingpu5/article/details/71602770
#显示 让用户选择 c. 用户交互,显示省市县三级联动的选择 dic = { "河北": { "石家庄": ["鹿泉", "藁城", "元氏"], "邯郸": ["永年", "涉县", "磁县"], } "河南": { ... } "山西": { ... } } for v in dic.keys(): print(v) inp = input('>>>')
dic[inp]
china_dic = { "河北": { "石家庄": ["鹿泉", "藁城","元氏", "高邑"], "邯郸": ["永年", "涉县", "磁县"], }, "河南": { "郑州": ["新密", "新郑", "登封"], "开封": ["通许", "兰考", ], } } pro = input("请输入省份") for item in china_dic.keys(): if item == pro: print(china_dic[pro]) city_name = input('请输入城市名字: ') for city in china_dic[pro].keys(): if city == city_name: print(china_dic[item][city]) break
