知非264 2022-10-09 17:04 采纳率: 50%
浏览 129
已结题

关于#Python#的问题,如何解决?

img

img

img


时间有些紧迫尽量在明天中午12点之间完成,希望有大lao解答

  • 写回答

3条回答 默认 最新

  • honestman_ 2022-10-09 17:33
    关注

    代码如下,如有帮助,请点击一下采纳谢谢:

    data = {
        'user1': {'01': 20, '02': 4, '04':6, '13':1, "31":1},
        'user2': {'01': 15, '03': 4, '11':1, '12':3, "22":1, '23':2, '31':1, '33':2},
        'user3': {'01': 10, '02': 3, '03':6, '13':1, "31":1, '32':3}
    }
    goods = {
        '01': '牛奶-1.5',
        '02': '橙汁-5.8',
        '03': '酸奶-2.5',
        '04': '啤酒-5.5',
        '11': '牙膏-6.8',
        '12': '牙刷-4.6',
        '13': '洗发水-22.5',
        '14': '沐浴液-27',
        '21': '上衣-155',
        '22': '牛仔裤-215',
        '23': '帽子-55',
        '24': '袜子-12.3',
        '31': '火腿-23',
        '32': '培根-21',
        '33': '酱肉-45',
        '34': '牛肉-65'
    }
    # 1.每个人的购物总额
    for user, skus in data.items():
        sum = 0
        for sku_name, sku_count in skus.items():
            sku_price = float(goods[sku_name].split('-')[-1]) * sku_count
            sum += sku_price
        print(f'{user}总共花费{sum}元')
    # 2.有人购买的商品
    sku_keys = []
    for user, skus in data.items():
        for sku_name, sku_count in skus.items():
            if sku_name not in sku_keys:
                sku_keys.append(sku_name)
    print('有人购买的商品为:')
    for sku_key in sku_keys:
        print(goods[sku_key].split('-')[0], end=' ')
    # 3.每个人都购买的商品
    sku_keys = []
    ret_set = set()
    for user, skus in data.items():
        for sku_name, sku_count in skus.items():
            sku_keys.append(sku_name)
    for sku_key in sku_keys:
        if sku_keys.count(sku_key) == 3:
            ret_set.add(sku_key)
    print('\n每个人都购买的商品为:')
    for sku_key in ret_set:
        print(goods[sku_key].split('-')[0], end=' ')
    
    # 无人购买的商品
    print('\n无人购买的商品为:')
    for sku_key in set(sku_keys):
        del goods[sku_key]
    for key, value in goods.items():
        print(value.split('-')[0], end=' ')
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 10月18日
  • 已采纳回答 10月10日
  • 创建了问题 10月9日

悬赏问题

  • ¥15 人在外地出差,速帮一点点
  • ¥15 如何使用canvas在图片上进行如下的标注,以下代码不起作用,如何修改
  • ¥15 Windows 系统cmd后提示“加载用户设置时遇到错误”
  • ¥50 vue router 动态路由问题
  • ¥15 关于#.net#的问题:End Function
  • ¥15 无法import pycausal
  • ¥15 VS2022创建MVC framework提示:预安装的程序包具有对缺少的注册表值的引用
  • ¥15 weditor无法连接模拟器Local server not started, start with?
  • ¥20 6-3 String类定义
  • ¥15 嵌入式--定时器使用