【发布时间】:2019-08-25 21:18:01
【问题描述】:
在 Python 中有没有办法将 1.0 转换为整数 1 而同一函数忽略 1.5 并将其保留为 float?
现在,int() 将把1.0 变成1,但它也会将1.5 舍入到1,这不是我想要的。
【问题讨论】:
-
一种方法是使用
is_integer()检查浮点数,如果通过,将其转换为int? -
浮点数是近似值,
1.0实际上可能是1.00000000000001或0.999999999999。 -
请注意,由于duck typing,您想要实现的这段文字可能不合适或无用,具体取决于上下文。
-
请用文字/规则来说明您的确切要求,而不仅仅是一个例子!
-
def f(x): if x == 1.0: return 1 else return 1.5
标签: python floating-point integer