python - ().is_integer() 不工作

标签 python python-2.7 integer

这段代码有什么问题:

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/

相关文章:

python - Jira-Python - jira.client 导入错误

linux - x64 位汇编

string - 如何在没有库函数的情况下将字符串解析为整数?

python - 如何使用 Django 比较要使用 Markdown 渲染的两个模型?

python - Pytest 不会在类中获取测试方法

python - f()+f() 给出 [3,3,3,3] ,为什么不给出 [3,3,3]

xcode - Cython 编译错误 : '-mno-fused-madd'

python - 随机选择一个元组集,然后将其从原始元组列表中删除

java - 递归查找两个整数之间公共(public)数字的最后一个索引

python - 将带有未定义字符的字节文字写入 CSV 文件(Python 3)