2016-03-08 55 views
1

我想将1762毫秒更改为秒1.762。我已经尝试了下面的方法,当我需要上述的秒数时,它给了我单个数字的秒数(即“1.762”)。我如何改变毫秒为蟒蛇秒?

seconds=(rcccc/1000)%60 
sec = int(seconds) 
+0

尝试除以'1000.0'取代'1000 ',所以它被迫做一个浮动分割而不是整数分割。在Python 3中,这被改变了,'/'总会像你所期望的那样做一个浮动部分。 – Felk

+0

'(rcccc/1000。)%60' - 做float division – pushkin

回答

4

在解决这个问题的很多方法中,有一种方法是指定其中一个操作数是浮点数。

>>> 1762/1000 # Both integers 
1 

>>> 1762/1000.0 # One float 
1.762 
+0

谢谢Ami,解决方案非常简单。 –

+0

不客气。 –

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