python中的str.isdigit,isnumeric和isdecimal有什么区别?

python中的str.isdigit,isnumeric和isdecimal有什么区别?,第1张

python中的str.isdigit,isnumeric和isdecimal有什么区别?

主要是关于unipre分类。以下是一些显示差异的示例

>>> def spam(s):...     for attr in 'isnumeric', 'isdecimal', 'isdigit':...         print(attr, getattr(s, attr)())...         >>> spam('½')isnumeric Trueisdecimal Falseisdigit False>>> spam('³')isnumeric Trueisdecimal Falseisdigit True

具体行为在此处的官方文档中。

查找所有脚本

import sysimport unipredatafrom collections import defaultdictd = defaultdict(list)for i in range(sys.maxunipre + 1):    s = chr(i)    t = s.isnumeric(), s.isdecimal(), s.isdigit()    if len(set(t)) == 2:        try: name = unipredata.name(s)        except ValueError: name = f'prepoint{i}'        print(s, name)        d[t].append(s)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5639487.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存