Python 判断字符串是否包含数字

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

Python 判断字符串是否包含数字

Sun_Sherry   2022-05-23 我要评论

  在用Python进行数据处理的时候,经常会遇到DataFrame中的某一列本应该是数值类型,但由于数据不规范导致在字段中夹杂了非数值类型。对于这种类型的数据,再进行处理的时候一般都需要先判断该列中的每一个值是否仅包含数字。常用的判断方法如下:

str.isdecimal()函数

作用:如果字符串中的所有字符都是十进制字符且该字符串至少有一个字符,则返回 True , 否则返回 False 。十进制字符指那些可以用来组成10进制数字的字符,例如 U+0660 ,即阿拉伯字母数字0 。

str.isdigit()函数

作用:如果字符串中的所有字符都是数字,并且至少有一个字符,返回 True ,否则返回 False 。 数字包括十进制字符和需要特殊处理的数字,如兼容性上标数字。这包括了不能用来组成 10 进制数的数字,如 Kharosthi 数。 严格地讲,数字是指属性值为 Numeric_Type=Digit 或 Numeric_Type=Decimal 的字符。

str.isnumeric()函数

如果字符串中至少有一个字符且所有字符均为数值字符则返回 True ,否则返回 False 。 数值字符包括数字字符,以及所有在 Unicode 中设置了数值特性属性的字符,例如 U+2155, VULGAR FRACTION ONE FIFTH。 正式的定义为:数值字符就是具有特征属性值 Numeric_Type=Digit, Numeric_Type=Decimal 或 Numeric_Type=Numeric 的字符。

示例:

在这里插入图片描述

另外,这三个函数不能识别字符’.’,所以这三个函数都无法判断浮点数转换来的字符串(这需要使用正则表达式)。

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们