如何使用Python创建华氏转摄氏温度函数并调用输出结果
华氏温度转摄氏温度的Python实现
嗨,我来帮你搞定这个温度转换的函数~ 先看看你给出的代码里存在几个小问题:
- 函数内部给
temperature_in_c赋值时,误用了小于号<而不是赋值符号=,这会直接导致语法错误 temperature_in_c是函数内部的局部变量,主程序里直接打印它会触发NameError,因为外部无法访问函数内的局部变量
下面是修正后的完整代码,我会一步步解释:
# 获取用户输入的华氏温度,用float比int更适合处理带小数的温度值 temperature_in_f = float(input("Enter temperature in fahrenheit: ")) def f_to_c(fahrenheit): # 应用华氏转摄氏的标准公式:(华氏度 - 32) × 5/9 centigrade = (fahrenheit - 32) * 5 / 9 return centigrade # 调用转换函数,把结果存到变量里 converted_temp = f_to_c(temperature_in_f) # 打印转换后的摄氏温度,也可以直接写 print(f_to_c(temperature_in_f)) print(f"转换后的摄氏温度为: {converted_temp:.2f}")
代码细节说明:
- 输入处理:用
float()替代int(),这样用户可以输入像98.6这样的带小数的温度,结果更贴合实际场景 - 函数逻辑:
f_to_c函数接收一个华氏温度参数,用标准转换公式计算后返回摄氏温度值 - 输出优化:用格式化字符串
{converted_temp:.2f}让输出保留两位小数,看起来更整洁;如果不需要小数位数限制,直接打印converted_temp即可
内容的提问来源于stack exchange,提问作者Walter White
相关产品推荐
相关产品推荐

