Я решал вопрос программирования, где мне нужно было найти деление с плавающей точкой очень большого числа (10 ^ 100 000) с другим числом (10 ^ 5).
Однако, когда я импортировал слово floor из математического модуля, он выдал ошибку времени выполнения, но когда я попытался сделать то же самое, используя //, он показал мне результат.
Я хочу знать, почему такая разница?
В чем разница между // и math.floor ().
Я новичок и не могу найти соответствующий материал.
с помощью
используя math.floor
>>> import math
>>> math.floor( pow(10,1000) / 1000 )
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
OverflowError: integer division result too large for a float
используя //
pow(10,1000) // 1000
10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000