You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Udemy 100天代码课程Python问题:披萨结算程序运行账单恒为$0

问题原因
  • 你的代码中所有条件判断规则为严格匹配大写的S/M/L/Y/N,如果用户输入时用了小写字母、或者输入内容前后带有空格,所有条件分支都不会触发,初始值为0的bill变量就不会有任何累加,最终输出自然始终是$0。
修复方案
  • 对所有用户输入的内容先做标准化处理:去除首尾空白字符,再统一转为大写,就能兼容大小写输入、带空格的输入场景。

修改后的完整代码如下:

print("Welcome to Python Pizza Deliveries!")
# 对输入做去空白+转大写的标准化处理
size = input("What size pizza do you want? S, M, or L ").strip().upper()
add_pepperoni = input("Do you want pepperoni? Y or N ").strip().upper()
extra_cheese = input("Do you want extra cheese? Y or N ").strip().upper()

bill = 0

if size == "S":
    bill += 15
elif size == "M":
    bill += 20
elif size == "L":
    bill += 25
if add_pepperoni == "Y":
    if size == "S":
        bill += 2
    else:
        bill += 3
if extra_cheese == "Y":
    bill += 1

print(f"Your final bill is ${bill}")

内容的提问来源于stack exchange,提问作者Valerie

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 07:45:03