Python计算器代码中Try Except分支打印语句不生效问题求助
问题核心原因
- 你的
try代码块内没有任何会抛出异常的逻辑:if method in 合法列表的判断只会返回布尔值,即使用户输入的操作符不在合法列表中,也只是if条件不成立、不会跳出循环,不会触发任何程序异常,因此except分支永远不会被触发,对应的错误提示自然不会打印。 - 此处不需要使用异常捕获逻辑,直接做条件校验即可。
对应代码修正
将方法选择的while循环部分修改为如下代码即可:
while True: method = input("What math method would you like to use. m = multiplication, d = division, a = addition, s = subtraction:, ex = exponent: ") if method in ['m','M','d','D','a','A','s','S','Ex','ex','EX','eX']: break print("Error your method is not viable")
其他需要修正的问题
- 你在for循环末尾写的
exit()会导致程序完成第一次计算后直接退出,无法按照你输入的loops次数执行多轮计算,直接删除该行exit()即可。
内容的提问来源于stack exchange,提问作者Psy6
相关产品推荐
相关产品推荐

