繁体   English   中英

Python:检查负数

[英]Python: Check for Negative Numbers

我正在尝试向此字符串添加一段代码,以检查第一个位置是否为负数。 如果代码标识负数,则应返回“ False”。 我在用户输入命令中遇到了int和str问题。 抱歉,Python的新功能。

def is_number(S):
    #if s < 0:
        #print("False")
    #else:   
        try:
            float(s)
            return True
        except ValueError:
            pass

        try:
            import unicodedata
            unicodedata.numeric(s)
            return True
        except (TypeError, ValueError):
            pass
        return False

s = input()

is_number(s)

这是你想要的吗?

def check_negative(s):
    try:
        f = float(s)
        if (f < 0):
            return True
        # Otherwise return false
        return False
    except ValueError:
        return False

不太确定这是否是您想要的东西,也许您会看到ᴡʜᴀᴄᴋᴀᴍᴀᴅᴏᴏᴅʟᴇ3000的答案

is_number=lambda S: str(S)[0]=='-' and len(str(S))>1

试试这个代码。 您可以使用此代码替换is_number函数。 该函数检查第一个字符是否为负号,如果是,则将返回true。 否则,数字不能为负,然后将返回false。 但是,如果只有-号,则两者都不存在,并且将返回false。 它只用一行,简单得多。 它也适用于字符串和浮点数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM