【发布时间】:2019-02-17 09:52:06
【问题描述】:
我需要检查一个字符串是否是十进制/浮点数的形式。
我尝试过使用 isdigit() 和 isdecimal() 和 isnumeric(),但它们不适用于浮点数。我也不能使用 try: 并转换为浮点数,因为这会将诸如“12.32”之类的内容转换为浮点数,即使有一个前导空格。如果有前导空格,我需要能够检测到它,这意味着它不是小数。
我希望“5.1211”以小数形式返回 true,以及“51231”。然而,像“123.12312.2”这样的东西不应该返回真,以及像“123.12”或“123.12”这样的任何带有空格的输入。
【问题讨论】:
-
如果您不想只接受
float接受的内容,则需要明确说明 可接受的内容。例如:.12应该被接受吗?12.?1e6?+1.23?123_456.789?−123(带有 Unicode 减号)?
标签: python floating-point