为了账号安全,请及时绑定邮箱和手机立即绑定

().is_integer()无法正常工作

().is_integer()无法正常工作

摇曳的蔷薇 2021-03-31 04:27:29
这段代码有什么问题:n = 10((n/3)).is_integer()我不明白为什么我不能设置n =任何数字并检查它是否是整数。谢谢你的帮助!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'
查看完整描述

4 回答

?
慕尼黑8549860

TA贡献1818条经验 获得超11个赞

出现此错误的原因是因为您使用整数除法将整数10除以3,结果得到int实例形式的整数3 。然后,您尝试is_integer()在该结果上调用该方法,但是该方法在float类中而不是在int类中,就像错误消息所指出的那样。


一个快速的解决方案是更改代码并除以除法,3.0否则3将导致浮点除法,并为您提供一个float实例,您可以is_integer()像尝试尝试的那样在该实例上调用该方法。做这个:


n = 10

((n/3.0)).is_integer()


查看完整回答
反对 回复 2021-04-02
?
翻阅古今

TA贡献1780条经验 获得超5个赞

您正在使用Python 2.7。除非您使用from __future__ import division,否则将两个整数相除将返回您和integer。is_integer仅存在于中float,因此出现了您的错误。


查看完整回答
反对 回复 2021-04-02
  • 4 回答
  • 0 关注
  • 277 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号