我试着在python中编写一个简单的fizzbuzz程序,
我尝试使用isinstance
来确定数字是float
还是int
而不是创建列表,但每当我因某种原因尝试它时它会认为每个数字都是浮点数这是python中的一个东西还是我逻辑中的缺陷?
i = 3
if isinstance(i/3,float) == False:
print("Fizz")
else:
print("???")
答案 0 :(得分:1)
/
运算符返回float
。即使该值可以用整数表示,您仍然会获得float
。例如,3/3
将返回float
1.0
的值。相反,您可以使用%
运算符直接检查余数:
if i % 3 == 0:
print("Fizz")
else:
print("???")