我对 Python 很陌生,但对学习很感兴趣。对于 uni Python 课程,我将创建一个程序,将温度转换为摄氏度或华氏度,并将转换显示为小数点后第一个位。我的问题在于我的打印线。正如您在我的代码中看到的,我尝试在连接时使用 round() 函数。虽然我试图将浮点数转换为 str(),但当我运行我的程序时,出现以下错误。类型错误:类型 str 未定义圆形方法对于以下行打印 (round(str(temp), 1)+ " 摄氏度 = " + str(degF) + " 华氏度。")和我的 elif 集团中的打印线类似。任何帮助理解和解决问题将不胜感激。temp=float(input("Enter a temperature value to convert: "))unit=str(input("Convert to Fahrenheit or Celsius? Enter f or c: "))if unit=="c" or unit == "C": degC=(temp) temp=(1.8*temp)+32 print (round(str(temp), 1) + " degrees fahrenheit = " + str(degC) + " degrees Celsius. ")elif unit=="f" or unit == "F": degF=(temp) temp=(temp-32)/1.8 print (round(str(temp), 1)+ " degrees celsius = " + str(degF) + " degrees Fahrenheit. ")else: print("you did not enter an f or c. Goodbye ")我的输出应该四舍五入到第一个小数位。
3 回答
一只斗牛犬
TA贡献1784条经验 获得超2个赞
除非这是使用round函数的课堂作业,否则我认为不需要round函数。
print ("%.1f degrees Celsius = %.1f degrees Fahrenheit" % (temp, degC))
添加回答
举报
0/150
提交
取消