作业day07

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)
原文地址:https://www.cnblogs.com/cui-cheng/p/13081286.html