Python 条件语句if-elif-else以及使用while循环判断用户输入的字符是否为y或n

Python 条件语句


举例说明:会员消费500以上享五折优惠,200-500享七折,低于200享九折;非会员消费500以上享七折,200-500享九折,200以下无折扣优惠。

# 判断用户输入的是否为 y 或 n
while True:
    a = input("请问您是会员吗?(y/n):")
    while a not in ("y","Y","n","N"):
        print("请您输入y/n:")
        a = input("请问您是会员吗?(y/n):")
    else: # 直到输入的是 y、Y、n、N才退出循环
        break
# 输入金额
b = float(input("请输入您的结算金额:"))
print("请您稍候,正在为您计算折后返回金额")

# 若用户输入的为 y或Y,则为会员,会员折扣逻辑如下:
if a in ("y","Y"):
    if b >= 500:
        print("您的结算金额为:",b,"元,会员消费满500享五折优惠")
        print("五折后结算金额为:",round(b*0.5,2),"返回金额:",round(b-(b*0.5),2))
    elif b >= 200 and b < 500:
        print("您的结算金额为:", b, "元,会员消费200-500享七折优惠")
        print("七折后结算金额为:", round(b * 0.7,2), "返回金额:", round(b-(b*0.7),2))
    else:
        print("您的结算金额为:", b, "元,会员消费200以下享九折优惠")
        print("九折后结算金额为:", round(b * 0.9,2), "返回金额:", round(b-(b*0.9),2))
else:  # 非会员折扣逻辑
    if b >= 500:
        print("您的结算金额为:",b,"元,非会员消费满500享七折优惠")
        print("七折后结算金额为:",round(b*0.7,2),"返回金额:",round(b-(b*0.7),2))
    elif b >= 200 and b < 500:
        print("您的结算金额为:", b, "元,非会员消费200-500享九折优惠")
        print("九折后结算金额为:", round(b * 0.9,2), "返回金额:", round(b-(b*0.9),2))
    else:
        print("不好意思!非本店会员,消费未满200,无折扣优惠!")


执行结果:
在这里插入图片描述

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值