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

检查变量是否为整数

检查变量是否为整数

大话西游666 2019-06-24 13:56:24
检查变量是否为整数如何检查变量是否是整数?
查看完整描述

3 回答

?
Smart猫小萌

TA贡献1911条经验 获得超7个赞

如果你需要这样做,就做

isinstance(<var>, int)

除非您在Python2.x中,在这种情况下,您需要

isinstance(<var>, (int, long))

不使用type..在Python中,它几乎不是正确的答案,因为它阻碍了多态性的所有灵活性。例如,如果您的子类int,您的新类应该注册为int,它type不会:

class Spam(int): passx = Spam(0)type(x) == int # Falseisinstance(x, int) # True

这符合Python的强多态性:您应该允许任何行为类似于int而不是强制要求它是一个。

然而,传统的Python思维是请求宽恕比请求许可容易..换句话说,不要检查x是一个整数;假设是,如果不是,则捕获异常结果:

try:
    x += 1except TypeError:
    ...

这种心态正在慢慢地被使用抽象基类,这使您能够准确地注册对象应该具有哪些属性(添加?倍增?加倍?)让它继承一个特殊构造的类。这将是最好的解决方案,因为它将允许一点儿没错那些具有必要和足够属性的对象,但是您必须阅读关于如何使用它的文档。


查看完整回答
反对 回复 2019-06-24
  • 3 回答
  • 0 关注
  • 668 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信