python中的函数round



我对正确使用round函数有一些疑问,我想知道如何正确使用rough函数而不会有任何问题。以下是我在python代码中的编码方式:形式1:

res = round(float(float(self.inst) - int(self.elt)),1)

如果输入:形式2:

res1 = round(2*float(self.pro),1)

--->它没有给我任何结果。

在form1中,当我放入整数值时,它会给我结果,但当我放入浮点值时,什么都没有显示。请帮助我希望代码的对齐正常工作,使用浮点值和整数值。

在表2中,没有显示任何内容,甚至我输入了整数或浮点值来查看句子是否有效。

来自round()文档:

返回小数点后四舍五入到ndigits精度的数字。如果如果ndigits被省略或为None,则返回与其最接近的整数输入

对整数进行四舍五入总是会返回您传递给它的整数,无论是什么:

round(42, 50)
42

第二个参数用于要求浮点值的点后面有一定数量的数字。

round(1.2)
1

原因询问点后为0位。

round(1.2, 1)
1.2

原因询问点后1位数字。

round(1.2,2)
1.2

要求2位数字,但参数中给出的浮点数只有一位数字。

在您的情况下,res1res高度依赖于self.instself.eltself.pro,因此如果您不更具体,我们无法帮助您。我建议您通过操作用一行代码编写代码,并在每个步骤检查结果。我认为你的问题不是来自round()函数,而是它内部的操作

顺便说一句,没有人会弄清楚你试图用这些变量名实现什么。

您不需要额外的浮点转换。我得到以下结果-

a = '14.524'
b = 7.890
res = round((float(a) - int(b)), 1)
print(res)
7.5
res1 = round(2 * float(a), 1)
print(res1)
29

检查终端窗口中的错误。

最新更新