我得计算一下播放器播放歌曲的百分比
例如:
CurrentTime = 11 (Int)
TotalTime = 222 (Int)
我需要发挥的百分比,我这样做的以下
PlayedBufferPercent = (CurrentTime*100)/TotalTime
->;手动计算结果为4.95495495495,与预期一致。 现在我想将这个值四舍五入为5个十进制值=4.95496,我尝试了下面使用python的方法,但是没有得到正确的输出。你知道吗
PlayedBufferPercent = float((CurrentTime*100)/TotalTime)
PlayedBufferPercent1 = ("{0:.5f}" .format(PlayedBufferPercent))
结果=4.00000,但我想要4.95496,请帮忙
看起来您的
PlayedBufferPercent
变量仍然是一个int-这是预期的,因为它是2个int的除法结果。你知道吗即使你把演员加入浮动,也太晚了,你已经失去了精准度。你知道吗
解决这个问题的最简单方法是通过显式地
float(TotalTime)
或隐式地TotalTime = 11.0
(与CurrentTime
相同)将CurrentTime
和TotalTime
设为浮点数您正在使用整数运算执行算术。此表达式:
使用整数算术计算,因为操作数都是整数。所以它的计算结果是
4
,然后当你用只需将
4
转换为4.0
。你知道吗您需要使用浮点运算来执行算术。您可以通过使至少一个操作数为浮点数来强制执行该操作。例如:
或者,您可以将
CurrentTime
和TotalTime
设为浮点数。你知道吗最后,你不会得到
4.95496
的提醒。相反,答案是4.95495
,这是正确的答案。你知道吗相关问题 更多 >
编程相关推荐