相关疑难解决方法(0)

Python中的浮点相等

我有一段代码的行为不同,这取决于我是否通过字典获取转换因子或我是否直接使用它们.

将打印以下代码 1.0 == 1.0 -> False

但是,如果你更换factors[units_from]10.0,并factors[units_to ]1.0 / 2.54它将打印1.0 == 1.0 -> True

#!/usr/bin/env python

base = 'cm'
factors = {
    'cm'        : 1.0,
    'mm'        : 10.0,
    'm'         : 0.01,
    'km'        : 1.0e-5,
    'in'        : 1.0 / 2.54,
    'ft'        : 1.0 / 2.54 / 12.0,
    'yd'        : 1.0 / 2.54 / 12.0 / 3.0,
    'mile'      : 1.0 / 2.54 / 12.0 / 5280,
    'lightyear' : 1.0 / 2.54 / …
Run Code Online (Sandbox Code Playgroud)

python floating-point equality

16
推荐指数
3
解决办法
2万
查看次数

标签 统计

equality ×1

floating-point ×1

python ×1