use*_*676 3 python floating-point modulo
我只想向您展示python中的操作结果.我无法解释.
>>> 1.0%1.0
0.0 (OK)
>>> 1.0%0.1
0.09999....
>>> 1.0%0.001
0.00999....
>>> 1.0 %0.0001
0.000999...
Run Code Online (Sandbox Code Playgroud)
... 等等.我需要一些东西让我能够理解'x%y'的余数是否为0.0,即'y'将'x'恰好分为N次,其中N是整数.由于之前的行为,我不知道如何设置一个可能的容差来确定剩余部分是否接近0.任何帮助?
正如这个(长期)响应所说,使用decimal模块:
>>> from decimal import Decimal
>>> Decimal('3.5') % Decimal('0.1')
Decimal('0.0')
>>> print(Decimal('3.5') % Decimal('0.1'))
0.0
>>> (Decimal(7)/2) % (Decimal(1)/10)
Decimal('0.0')
Run Code Online (Sandbox Code Playgroud)
问题主要是由于系统中浮动的表示,你可以在因特网的各个地方以及链接的响应中阅读有关它的内容.
| 归档时间: |
|
| 查看次数: |
4524 次 |
| 最近记录: |