isdigit('5')的结果为0。???

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了isdigit('5')的结果为0。???相关的知识,希望对你有一定的参考价值。

参考技术A '5' 是字符,不是数字,结果为“真”,返回非 0 的值,结果不是0。本回答被提问者采纳

为啥 isnumeric isdigit 和 isdecimal False 为 1.5?

【中文标题】为啥 isnumeric isdigit 和 isdecimal False 为 1.5?【英文标题】:why is isnumeric isdigit and isdecimal False for 1.5?为什么 isnumeric isdigit 和 isdecimal False 为 1.5? 【发布时间】:2021-02-21 10:28:32 【问题描述】:
lst = ['a: 12', 'b: 1.5', 'c: 13']

for lines in lst:
    entry = lines.split(":")
    category = entry[0]
    amount = entry[1].strip()
    print(amount.isnumeric())

结果为 True,False,isnumeric、isdigit 和 isdecimal 为 True

最终使用 isinstance(float(amount), float) 来测试这种情况

【问题讨论】:

因为. 不是数字。 因为. 不是数字,不是数字,也不是十进制。 那么对于像 1.5 这样的数字返回 true 的最佳方法是什么? 这取决于您认为“像 1.5 这样的数字”。你会考虑.11. 这样的数字吗? 1E9 呢? infnan 数字一样吗? 【参考方案1】:

如果所有字符都是数字(0-9),则isnumeric() 方法返回True,否则返回False

²¾ 等指数也被视为数值。

-11.5不考虑数值,因为字符串中的所有字符都必须是数字,而 -. 不是。

【讨论】:

【参考方案2】:

来自 Programiz “如果字符串中的所有字符都是数字字符,则 isnumeric() 方法返回 True。如果不是,则返回 False。”

所以,这个点不是数字。

【讨论】:

以上是关于isdigit('5')的结果为0。???的主要内容,如果未能解决你的问题,请参考以下文章

AttributeError: 'int' object has no attribute 'isdigit'(python下的isdigit函数)

isdigit字符串测试函数应用实例

%s%d'''if .isdigit()的运用

Python题目如图,求解!!!

[UOJ79]一般图最大匹配

将字符串s='ab34aa243dd78eww89' 处理为 '**34**243**78***89',然后对数字求和,结果为'**7**9**15***17