Python如何实现两数加75后的计算结果始终不超过275
实现方案
你原有代码存在两个冗余问题:else分支下单独写numbers是无效语句,Python语法也不需要在行尾添加分号。针对你要的「结果超限就持续减275直到不超过275」的需求,有两种可行实现:
方案1:循环逻辑实现
按照你期望的循环思路编写,只要计算结果大于275就重复执行减275操作,直到满足上限要求:
def newnumber(num1, num2): numbers = num1 + num2 + 75 while numbers > 275: numbers -= 275 return numbers
方案2:内置语法实现(性能更优)
你需要的「反复减去固定值直到结果落在阈值内」的逻辑,本质是取模运算,直接用Python内置的%取模运算符即可一步完成计算,不需要手动写循环,无论初始计算值比275大多少都能直接返回正确结果:
def newnumber(num1, num2): total = num1 + num2 + 75 return total % 275
补充说明:Python的取模运算对负数输入也会返回0~274区间内的非负值,如果你的业务允许传入负数参数且不需要对负数值做取模折算,可以加判断条件调整逻辑。
如果你的实际需求是结果只要超过275就直接返回275(而非减去275的倍数),可以直接用Python内置的
min()函数实现,逻辑更直观:def newnumber(num1, num2): total = num1 + num2 + 75 return min(total, 275)
内容的提问来源于stack exchange,提问作者windowws
相关产品推荐
相关产品推荐

