电商订单计算器定义一个函数用于根据传入的一批商品信息商品名、价格、数量、优惠优惠券、积分抵扣、运费信息计算订单的总金额。具体规则如下优惠券需要商品金额满5000才可以使用且优惠券金额不能超过商品总价。积分抵扣需要商品总金额满5000才可以使用100积分抵扣1元且抵扣金额不能超过商品总价积分只能整百抵扣。 案例2定义一个函数用于根据传入的一批商品信息商品名、价格、数量、优惠优惠券、积分抵扣、运费信息计算订单的总金额。 具体规则如下 1. 优惠券需要商品金额满5000才可以使用且优惠券金额不能超过商品总价。 2. 积分抵扣需要商品总金额满5000才可以使用100积分抵扣1元且抵扣金额不能超过商品总价积分只能整百抵扣。 def calc_order_cost(*args, coupon0, score0, express0.0): 根据传入的一批商品信息商品名、价格、数量、优惠优惠券、积分抵扣、运费信息计算订单的总金额 :param args: 商品信息商品名、价格、数量 # 可以用列表或元组 ----如(鼠标, 188, 2) (键盘, 388, 1) :param coupon: 优惠券 :param score: 积分 :param express: 运费 :return: 订单的总金额 # 订单的总金额 商品总金额 - 优惠券 - 积分抵扣 运费 # 1. 计算商品总金额 total_price [goods[1]*goods[2] for goods in args] total_cost sum(total_price) # 2. 扣减优惠券 if total_cost 5000 and coupon total_cost: total_cost - coupon # 3. 扣减积分抵扣 if total_cost 5000 and score // 100 total_cost: total_cost - score // 100 # 4. 添加运费 total_cost express return total_cost # 测试 total calc_order_cost((鼠标, 188, 2), (键盘, 388, 1), (手机, 3999, 1), coupon10, score4000, express9.9) print(total) # 4772.9 total calc_order_cost((鼠标, 188, 2), (键盘, 388, 1), (手机, 6999, 1), coupon10, score4000, express9.9) print(total) # 7722.9 total calc_order_cost((鼠标, 188, 2), (键盘, 388, 1), (手机, 6999, 1)) print(total) # 7763.0声明本篇学习笔记参考黑马程序员相关课程部分素材来源于网络公开资料及本人补充文中为个人整理复盘仅供学习交流使用。
阅读完成 · 觉得有帮助?