我想将1762毫秒更改为秒 1.762 。我已经尝试了下面的方法,当我需要如上所述的秒数(即“ 1.762 ”)时,它给出了我的单位数秒数。
seconds=(rcccc/1000)%60
sec = int(seconds)
答案 0 :(得分:6)
在解决这个问题的许多方法中,一种方法是指定其中一个操作数是浮点数。
>>> 1762 / 1000 # Both integers
1
>>> 1762 / 1000.0 # One float
1.762
答案 1 :(得分:1)
这似乎是Python 2.x
,这是由整数除法引起的。当机器人的分子和分母是整数时,结果将是整数:
seconds=(rcccc/1000)%60 #this is called integer division: int/int -> resulting in int
在你的数字中使用点(.
)以避免整数除法,使编译器清楚你不想要整数除法,而是浮点:
seconds=(rcccc/1000.0)%60
或者,您也可以将其中一个值转换为float
:
seconds=(rcccc/float(1000))%60
#or
seconds=(float(rcccc)/1000)%60
答案 2 :(得分:0)
您只是忘了放.0
。问题是当您将其除以1000时,它将得到真值(1.762)的下限函数。如果要获取真实值,则必须将1000表示为小数,例如1000.0
。如果使用它,它将获得所需的真实值(1.762)。