这段代码有什么问题:
n = 10
((n/3)).is_integer()
我不明白为什么我不能设置 n = any number 并检查它是否是整数。
感谢您的帮助!
python 2.7.4
错误:
Traceback (most recent call last):
File "/home/userh/Arbeitsfläche/übung.py", line 2, in <module>
print ((n/3)).is_integer()
AttributeError: 'int' object has no attribute 'is_integer'
最佳答案
出现此错误的原因是因为您使用整数除法将整数 10 除以 3,结果以 int
实例的形式得到整数 3。然后您尝试对该结果调用方法 is_integer()
但该方法在 float
类中而不是在 int
类中,只是如错误消息所述。
快速解决方法是更改您的代码并除以 3.0
而不是 3
这将导致浮点除法并为您提供 float
实例,您可以在其上调用 is_integer()
方法,就像您尝试的那样。这样做:
n = 10
((n/3.0)).is_integer()
关于python - ().is_integer() 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17170226/