栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python 打印购物小票

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python 打印购物小票

打印购物小票

需求:

  • 指定折扣
  • 输入购买商品单价与数量、顾客交费
  • 结算时打印购物小票,计算此次购物总金额,顾客交费,商店找补,以及购物积分
  • 钱不够时,提醒顾客继续交钱
  • 只给三次交钱机会
"""
功能:打印购物小票
作者:Fulling
日期:2021年11月7日
"""

# 输入部分
discount = 0.8  # 8折优惠
price1 = float(input("输入运动衫单价:"))
amount1 = int(input('输入运动衫购买数量:'))
price2 = float(input("输入网球鞋单价:"))
amount2 = int(input('输入网球鞋购买数量:'))
price3 = float(input("输入网球拍单价:"))
amount3 = int(input('输入网球拍购买数量:'))
payment = float(input('顾客实际交费:'))

# 处理部分
money = (price1 * amount1 + price2 * amount2 + price3 * amount3) * discount  # 计算购物金额
points = int(money // 33)  # 计算购物积分

# 输出部分
print('***************消费单**************')
print('%-8s%-6s%-6s%-6s' % ('购买物品', '单价', '数量', '金额'))
print('%-8s%-8.2f%-8d%-8.2f' % ('运动衫', price1, amount1, price1 * amount1))
print('%-8s%-8.2f%-8d%-8.2f' % ('网球鞋', price2, amount2, price2 * amount2))
print('%-8s%-8.2f%-8d%-8.2f' % ('网球拍', price3, amount3, price3 * amount3))
print('***********************************')
print('折扣:{}折'.format(int(discount * 10)))
print('消费总金额:¥{}'.format(round(money, 2)))
print('实际交费:¥{}'.format(payment))

# 三次机会
if payment > money:
    change = payment - money  # 计算找钱
    print('找钱:¥{}'.format(round(change, 2)))
    print('本次购物所获得的积分:{}'.format(points))
else:
    for i in range(0, 3):
        if payment >= money:
            change = payment - money  # 计算找钱
            print('找钱:¥{}'.format(round(change, 2)))
            print('本次购物所获得的积分:{}'.format(points))
            break
        else:
            print('支付金额不够,还需支付{:.2f}'.format(float(money - payment)))
            payment = float(input('继续支付:')) + payment
            if i == 2:
                print('钱不够,不卖了')

钱不够时 输出结果:

输入运动衫单价:59.9
输入运动衫购买数量:1
输入网球鞋单价:158.9
输入网球鞋购买数量:1
输入网球拍单价:218
输入网球拍购买数量:2
顾客实际交费:500
***************消费单**************
购买物品    单价    数量    金额    
运动衫     59.90   1       59.90   
网球鞋     158.90  1       158.90  
网球拍     218.00  2       436.00  
***********************************
折扣:8折
消费总金额:¥523.84
实际交费:¥500.0
支付金额不够,还需支付23.84
继续支付:10
支付金额不够,还需支付13.84
继续支付:10
支付金额不够,还需支付3.84
继续支付:2
钱不够,不卖了

钱够时 输出结果:

输入运动衫单价:59
输入运动衫购买数量:2
输入网球鞋单价:158
输入网球鞋购买数量:1
输入网球拍单价:200
输入网球拍购买数量:1
顾客实际交费:800
***************消费单**************
购买物品    单价    数量    金额    
运动衫     59.00   2       118.00  
网球鞋     158.00  1       158.00  
网球拍     200.00  1       200.00  
***********************************
折扣:8折
消费总金额:¥380.8
实际交费:¥800.0
找钱:¥419.2
本次购物所获得的积分:11
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/580514.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号