Python 将数字四舍五入到小数点后1位

Python 将数字四舍五入到小数点后1位,python,rounding,Python,Rounding,我希望公式的结果是小数点后1位,但四舍五入。 有没有我可以添加到打印中的公式? 可能有修剪吗?这也可能奏效 from math import floor x = 8.64 x = floor(x*10)/10 print(x) 8.6试试: import math num = 3.678 rounded_num = math.floor(num*10)/10 print(rounded_num) # output: 3.6 为什么不简单地使用一个round函数呢 x = round(5.76

我希望公式的结果是小数点后1位,但四舍五入。 有没有我可以添加到打印中的公式? 可能有修剪吗?这也可能奏效

from math import floor
x = 8.64
x = floor(x*10)/10
print(x)
8.6试试:

import math
num = 3.678
rounded_num = math.floor(num*10)/10
print(rounded_num) # output: 3.6

为什么不简单地使用一个round函数呢

x = round(5.76543, 2)
print(x)


这将返回
x=5.77
。我想这就是你想要的。

你是不是先用谷歌搜索jt的?这个问题有多种答案。
一个简单的
x=float(f'{x:0.1f}')
将给出数字
x
1位小数的截断版本

要将其写入lambda函数

round_down=lambda x:float(f'{x:0.1f})
用它,

打印(向下舍入(395.2459))
编辑。

另一个使用
floor
的答案是我更喜欢的方式。我更喜欢将数字保留为数字,而不是将它们转换为介于两者之间的字符串。

您可以简单地乘以10,然后应用
math.ceil
函数

import math
def one_decimal(n):
  return math.ceil(n*10)/10.0

“我希望公式的结果是小数点后1位,但四舍五入”我需要四舍五入,只有四舍五入才能向上四舍五入为什么你不加一些例子让我们了解你真正想要的是什么。试试别人的建议。