2020-06-09
一、元组练习题:
#简单购物车,要求如下:
实现打印商品详细信息,用户输入商品名和购买个数,则将商品名,价格,购买个数加入购物列表,如果输入为空或其他非法输入则要求用户重新输入
msg_dic={
'apple':10,
'tesla':100000,
'mac':3000,
'lenovo':30000,
'chicken':10,
}
msg_dic = { 'apple': 10, 'tesla': 100000, 'mac': 3000, 'lenovo': 30000, 'chicken': 10, } shopping_list = [] for k, v in msg_dic.items(): print(f"商品名称:{k}, 单价:{v}") while True: commodity = input("请输入您需要购买的商品名:").strip().lower() if commodity in msg_dic: # 判断商品名 while True: num = input("请输入你需要购买的数量:").strip() if num.isdigit(): # 判断数字格式 num = int(num) shopping_list.append((commodity, msg_dic[commodity], num)) print(shopping_list) break else: print("输入的数字格式不正确,请重新输入") else: print("您输入的商品名不存在,麻烦重新输入")
二、字典练习题:
① 有如下值集合 [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] dic = {'k1': [], 'k2': []} for i in l: if i >= 66: dic['k1'].append(i) else: dic['k2'].append(i) print(dic)
② 统计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 = s.split(' ') dic = {} for item in l: if item in dic: dic[item] += 1 else: dic[item] = 1 print(dic)