Python:检查字符串是否代表int,不使用Try / Except?

问题:

有没有办法判断是否代表一个整数(例如'3''-17'而不是'3.14''asfasfas')?不使用try / except机制?

is_int('3.14') = False
is_int('-7')   = True

回答:

如果你真的很懊恼地在整个地方使用try/except,请写一个帮助函数:

def RepresentsInt(s):
    try: 
        int(s)
        return True
    except ValueError:
        return False

>>> print RepresentsInt("+123")
True
>>> print RepresentsInt("10.0")
False

这将是更多的代码,以完全覆盖Python认为整数的所有字符串。我说这个就是pythonic。

 
 
Code问答: http://codewenda.com/topics/python/
Stackoverflow: Python: Check if a string represents an int, Without using Try/Except?

*转载请注明本文链接以及stackoverflow的英文链接

发表评论

电子邮件地址不会被公开。 必填项已用*标注

68 + = 74