当前位置: 首页 > 知识库问答 >
问题:

将浮点舍入为单个十进制(特定问题)

何宏博
2023-03-14

我对Python很陌生,但对学习很感兴趣。对于uni-Python课程,我要创建一个程序,将温度转换为摄氏度或华氏度,并将转换显示到第一个小数位。我的问题在于我的打印行。

正如您在我的代码中看到的那样,我尝试在连接时使用ound()函数。虽然我尝试过将会浮点数转换为str(),但当我运行我的程序时,我收到了以下错误。

对于以下行

对于我的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个答案

钱旻
2023-03-14

除非这是课堂作业使用圆形函数,否则我认为不需要圆形函数。

print ("%.1f degrees Celsius = %.1f degrees Fahrenheit" % (temp, degC))
谷涵容
2023-03-14

你的操作顺序不对。首先取整,然后转换为字符串:

print (str(round(temp), 1)+ " degrees celsius = " ...
甄德寿
2023-03-14

不要将温度转换为字符串。将其作为一个浮点数进行四舍五入。将四舍五入后的结果转换为串联的str

str(round(temp, 1))
 类似资料:
  • 问题内容: 如何在Python中将以下十六进制字符串转换为float(单精度32位)? 问题答案: 在 Python 3中 : 在 Python 2中 :

  • 问题内容: 有没有办法将python浮点数舍入为x小数?例如: 我已经找到了修剪/截断它们的方法(66.666666666-> 66.6666),但是不是圆形的(66.666666666-> 66.6667)。 问题答案: 使用内置功能: 帮助: round(number [,ndigits])->浮点数 将数字四舍五入到给定的精度(以十进制数字表示)(默认为0位数)。这总是返回一个浮点数。精度可

  • 我正在尝试将十六进制数据添加到十六进制字符串中,我需要使用它们的IEEE表示将浮点数添加到该字符串中。对于整数,这很简单: 其中value是数字的VARCHAR,params是包含十六进制字符串的VARCHAR。这个技巧适用于整数,但对于十进制,它会截断十进制部分,并将整数部分转换为十六进制整数。如果十进制的大小是固定的(java float或double),如何将值转换为十进制数的IEEE浮点表

  • 假设我使用一个32位的浮点数来存储一个位串(不要问)。进一步假设我想将这个浮点数序列化为一个文件(作为一个浮点数),并在序列化之前对浮点数的十进制表示进行银行家四舍五入。当我将浮点数读回程序时,系统会(自然地)将其存储在一个32位的浮点数中,该浮点数尽可能接近序列化的数字。 在银行舍入后,我的序列化浮点数在数字上必须有多精确,才能确保序列化的浮点数在二进制上与读回的浮点数相等?

  • 问题内容: 我必须将,以s 表示(例如)转换为浮点值( IEEE-754 转换)。我没有使用strconv.ParseFloat函数做到这一点。还有什么我要用的吗?到目前为止我找不到。我也尝试先将其转换为整数,然后转换为浮点数,但结果是错误的。 我最后一次尝试的代码: 问题答案: 首先,需要说明输入的位长。由于十六进制表示形式有4个字节(8个十六进制数字),因此很可能是a (需要询问者澄清)。 您

  • 问题内容: 我不太了解功能以及此处。实际上是什么意思? 为什么在这里我需要将浮点数转换为小数? 下面是相同的sql小提琴吗? http://sqlfiddle.com/#!2/1ed51b/1/0 我的问题再次重复: 实际上是什么意思? 为什么在这里我需要将浮点数转换为小数? 问题答案: 表示具有固定小数点的数字,总共有7位数字,其中2位在小数点右边。(因此,左5个,右2个。) 你并不 需要 ,除