Python如何判断字符串是否仅包含数字

  在用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 的字符。

示例:

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

到此这篇关于Python如何判断字符串是否仅包含数字的文章就介绍到这了,更多相关Python 判断字符串是否包含数字内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Python判断字符串是否为字母或者数字(浮点数)的多种方法

    str为字符串s为字符串 str.isalnum() 所有字符都是数字或者字母 str.isalpha() 所有字符都是字母 str.isdigit() 所有字符都是数字 str.isspace() 所有字符都是空白字符.t.n.r 检查字符串是数字/浮点数方法 float部分 >> float('Nan') nan >> float('Nan') nan >> float('nan') nan >> float('INF') inf >> fl

  • python通过自定义isnumber函数判断字符串是否为数字的方法

    本文实例讲述了python通过自定义isnumber函数判断字符串是否为数字的方法.分享给大家供大家参考.具体如下: ''' isnumeric.py test a numeric string s if it's usable for int(s) or float(s) ''' def isnumeric(s): '''returns True if string s is numeric''' return all(c in "0123456789.+-" for c in s)

  • 基于python实现判断字符串是否数字算法

    算法1 1.分小数和整数:如果小数点个数为1,则可能是小数.如小数点个数为0,则可能是整数.小数点个数非0也非1,那么就不是数字. 2.如果是小数,再分正数和负数的情况:如果首位为负号,则可能是负小数.如果首位不为负号,则可能是正小数. 1)如果首位为负号,则去掉负号. 2)如果首位不为负号:或者是首位为负号,去掉首位负号之后.则判断是否为是否为".",如果是,那么就不是数字,如果不是,就去掉"." 3)再判断剩下字符是否都在"0123456789&quo

  • python判断字符串是否纯数字的方法

    本文实例讲述了python判断字符串是否纯数字的方法.分享给大家供大家参考.具体如下: 判断的代码如下,通过异常判断不能区分前面带正负号的区别,正则表达式可以根据自己需要比较灵活的写,通过isdigit方法用来判断是否是纯数字,测试代码如下 复制代码 代码如下: #!/usr/bin/python # -*- coding: utf-8 -*- a = "1" b = "1.2" c = "a" #通过抛出异常 def is_num_by_exc

  • Python如何判断字符串是否仅包含数字

      在用Python进行数据处理的时候,经常会遇到DataFrame中的某一列本应该是数值类型,但由于数据不规范导致在字段中夹杂了非数值类型.对于这种类型的数据,再进行处理的时候一般都需要先判断该列中的每一个值是否仅包含数字.常用的判断方法如下: str.isdecimal()函数 作用:如果字符串中的所有字符都是十进制字符且该字符串至少有一个字符,则返回 True , 否则返回 False .十进制字符指那些可以用来组成10进制数字的字符,例如 U+0660 ,即阿拉伯字母数字0 . str.

  • sql 判断字符串中是否包含数字和字母的方法

    判断是否含有字母 select PATINDEX('%[A-Za-z]%', 'ads23432')=0 (如果存在字母,结果>1) 判断是否含有数字 PATINDEX('%[0-9]%', '234sdf')=0 (如果存在数字,结果>1)

  • python 判断字符串当中是否包含字符(str.contain)

    有一个ssqdatav2数据,要找到其中的深圳,并且替换成圳. 因为收集到的数据出现了错误,本来只有省份简写的地方却出现了深圳. 如何找到DF中包含深圳的数据? cond=ssqdatav2['first'].str.contains('深圳') ssqdatav2.loc[cond] 此时就找到first当中包含深圳的数据. 1.在first当中找到汉字 # 为分解firstprize定义函数 def fpp(x): if len(x)<=2: # 判断是否只有汉字,还是也有数字 return

  • Python实现判断字符串中包含某个字符的判断函数示例

    本文实例讲述了Python实现判断字符串中包含某个字符的判断函数.分享给大家供大家参考,具体如下: #coding=utf8 #参数包含两个: #containVar:查找包含的字符 #stringVar:所要查找的字符串 def containVarInString(containVar,stringVar): try: if isinstance(stringVar, str): if stringVar.find(containVar): return True else: return

  • java判断字符串中是否包含中文并过滤中文

    java判断字符串中是否包含中文并过滤掉中文,具体内容如下 1.判断字符串中是否包含中文方法封装 /** * 判断字符串中是否包含中文 * @param str * 待校验字符串 * @return 是否为中文 * @warn 不能校验是否为中文标点符号 */ public static boolean isContainChinese(String str) { Pattern p = Pattern.compile("[\u4e00-\u9fa5]"); Matcher m = p

  • Java 判断字符串中是否包含中文的实例详解

    Java 判断字符串中是否包含中文的实例详解 Java判断一个字符串是否有中文是利用Unicode编码来判断,因为中文的编码区间为:0x4e00--0x9fbb, 不过通用区间来判断中文也不非常精确,因为有些中文的标点符号利用区间判断会得到错误的结果.而且利用区间判断中文效率也并不高,例如:str.substring(i, i + 1).matches("[\\一-\\?]+"),就需要遍历整个字符串,如果字符串太长效率非常低,而且判断标点还会错误.这里提高 一个高效准确的判断方法,使

  • C#实现判断字符串中是否包含中文的方法

    本实例展示了C#实现判断字符串中是否包含中文的方法,是一个非常实用的功能,对初学者来说有一定的借鉴学习价值,具体实现方法如下: 主要功能代码如下: /// <summary> /// 判断字符串中是否包含中文 /// </summary> /// <param name="str">需要判断的字符串</param> /// <returns>判断结果</returns> public static bool Has

  • C#判断字符串中是否包含指定字符串及contains与indexof方法效率问题

    正文  #方法一:使用string.Contains方法 string.Contains是大小写敏感的,如果要用该方法来判断一个string是否包含某个关键字keyword,需要把这个string和这个keyword都转成小写或大写再调用Contains方法: string key = "bbb"; string temp = "aaaBBBcccDDD"; bool isContains= temp.ToLower().Contains(key.ToLower()

  • Python回文字符串及回文数字判定功能示例

    本文实例讲述了Python回文字符串及回文数字判定功能.分享给大家供大家参考,具体如下: 所谓回文字符串,就是一个字符串,从左到右读和从右到左读是完全一样的.回文数字也是如此. python2代码如下: def huiwen(s): s1=str(s) if s1==''.join(reversed(s1)): return True else: return False 运行结果: >>> huiwen('abccba') True >>> huiwen('abc')

  • strpos() 函数判断字符串中是否包含某字符串的方法

    用php的strpos() 函数判断字符串中是否包含某字符串的方法 判断某字符串中是否包含某字符串的方法 if(strpos('www.idc-gz.com','idc-gz') !== false){ echo '包含'; }else{ echo '不包含'; } PHP strpos() 函数 strpos() 函数返回字符串在另一个字符串中第一次出现的位置. 如果没有找到该字符串,则返回 false. 语法 strpos(string,find,start) 参数 描述 string 必需

随机推荐