Вы можете использовать python функцию с именем round
. функция округления будет эффективно округлять 9999999 ... и отображать только то, что вы хотите.
Пересмотренная версия кода будет выглядеть так:
import time
def timer():
for a in range(3000,0,-1):
print(round(a*.1, 1))
time.sleep(0.101) #for roughly 1 millisecond
timer()
Для использования функции round
, вы делаете это:
round([variableornumber]*.[float], [numberofdecimals]) #in this example, its limited to 1
Другой способ print
при использовании round
:
print(round([variableornumber]*.[float], [numberofdecimals]))
Причина, по которой python создает 999999999999...
, заключается в том, что python не может создать точную дробь 1/10 в основании 2.
15. Арифметика с плавающей точкой c: проблемы и ограничения - python 3.8.2