我有一些integers x,y,z
;假设我在做a = (x+y)/z.
如果a
是整数,我想写一些代码,如果a
是浮点数(不是整数),我想写一些其他代码。
我该怎么做?因为据我所知,在完成上述计算后,a
将自动成为浮点数-那么我如何编写一个条件来进行这种区分?
可以使用float.is_integer()
a = 2.0
print(a.is_integer()) # True
a = 2.5
print(a.is_integer()) # False
另一个选项是检查a
是否等于int(a)
,强制转换将使浮点数向下舍入到最接近的int
a = 2.0
print(a == int(a)) # True
a = 2.5
print(a == int(a)) # False