我对正确使用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位数字,但参数中给出的浮点数只有一位数字。
在您的情况下,res1
和res
高度依赖于self.inst
、self.elt
和self.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
检查终端窗口中的错误。