Python存储余量计算问题:如何实现累计扣减而非重复扣减初始值?
问题解决方法
你的核心问题是没有更新存储量变量x的值,每次计算都用初始的1000来减,自然得不到累计扣除后的剩余量。另外代码里还有几处语法错误,一起修正:
关键改动点
- 将
While改为小写while(Python对大小写敏感) - 将
Print改为小写print - 修复输入语句的引号缺失问题
- 每次扣除后,把
x更新为剩余的存储量,而非一直用初始值
修改后的完整代码
x = 1000 while x != 0: b = int(input("how many (x) you need: ")) # 可选:防止扣除量超过剩余存储 if b > x: print(f"剩余存储不足,当前仅剩余{x}个") continue x -= b # 核心:更新x为扣除后的剩余量 print(f"剩余存储量:{x}") else: print("存储已耗尽")
代码说明
x -= b等价于x = x - b,每次扣除后都会把x更新为当前剩余的存储量,下一次扣除时就会基于这个剩余值计算- 新增的判断逻辑可以避免输入的扣除量超过剩余存储,防止出现负数剩余量
- 当
x减到0时,循环会退出并提示存储耗尽
内容的提问来源于stack exchange,提问作者Husam Esam
相关产品推荐
相关产品推荐

