Python实现费用计算逻辑时代码持续运行报错问题排查
费用计算代码报错修复方案
你这段代码存在3处问题,分别会触发运行异常、逻辑错误和文案错误:
- 类型不匹配触发运行报错:
input()读取的用户输入默认是字符串格式,直接将字符串类型的my_money和整数类型的boat_cost做大小比较,Python会抛出TypeError: '<' not supported between instances of 'str' and 'int'异常,这是程序运行报错的核心原因。 - 判断逻辑写反:当前分支判断
my_money < boat_cost时输出“你能负担租船费用”,和实际逻辑完全相反——持有金额大于等于费用时才具备支付能力。 - 输出文案笔误:else分支输出的是
board hire(租滑板),和前文的租船场景不匹配,属于文本错误。
修正后可正常运行的代码如下:
# 将输入内容转换为浮点型,兼容用户输入带小数的金额场景 my_money = float(input('How much money do you have? ')) boat_cost = 20 + 5 if my_money >= boat_cost: print('You can afford the boat hire') else: print('You cannot afford the boat hire')
内容的提问来源于stack exchange,提问作者Faith Ida
相关产品推荐
相关产品推荐

