Python driving_cost函数问题求助:输出小数点错位及程序异常
Python驾驶成本计算程序错误修复
问题现象
运行驾驶成本计算程序时,出现输出数值量级错误(例如实际输出6.3198,正确结果应为63.2),且程序输出格式不符合要求。
错误分析
- 函数参数传递顺序错误:
函数driving_cost的定义参数顺序为(miles_per_gallon, dollars_per_gallon, miles_driven),但调用时错误地将行驶英里数(如400、50、10)放在了第一个参数位置,导致计算逻辑完全颠倒,结果数值量级错误。 - 未按要求格式化输出:
题目要求每个浮点输出保留两位小数,但代码直接打印原始计算结果,未做格式化处理。
修正后的代码
def driving_cost(miles_per_gallon, dollars_per_gallon, miles_driven): return (miles_driven / miles_per_gallon) * dollars_per_gallon if __name__ == '__main__': miles_per_gallon = float(input()) dollars_per_gallon = float(input()) # 按题目要求顺序调用函数,同时格式化输出为两位小数 print(f'{driving_cost(miles_per_gallon, dollars_per_gallon, 10):.2f}') print(f'{driving_cost(miles_per_gallon, dollars_per_gallon, 50):.2f}') print(f'{driving_cost(miles_per_gallon, dollars_per_gallon, 400):.2f}')
验证结果
输入示例值:
20.0 3.1599
输出结果:
1.58 7.90 63.20
完全符合题目要求。
内容的提问来源于stack exchange,提问作者dglr007
相关产品推荐
相关产品推荐

