Python数据类型判断

(一)直接判断输入数据类型:

Type()

举例:

结果为:

(二)判断字符串类型:

此处引用:https://www.cnblogs.com/ListenWind/p/4624476.html

 

在str为字符串的情况下:

str.isalnum() 所有字符都是数字或者字母(不区分大小写)

str.isalpha() 所有字符都是字母(不区分大小写)

str.isdigit() 所有字符都是数字

str.islower() 所有字符都是小写

str.isupper() 所有字符都是大写

str.istitle() 所有单词都是首字母大写,像标题

str.isspace() 所有字符都是空白字符、\t、\n、\r

返回的结果将为 TRUE OR 报错

 

举例:

 

判断字符str是否是浮点类型:(用正则示例)

正则表达式解释:

^[-+]?[0-9]+\.[0-9]+$

^表示以这个字符开头,也就是以[-+]开头,[-+]表示字符-或者+之一,

?表示0个或1个,也就是说符号是可选的。

同理[0-9]表示0到9的一个数字,+表示1个或多个,也就是整数部分。

\.表示的是小数点,\是转义字符因为.是特殊符号(匹配任意单个除\r\n之外的字符),

所以需要转义。

小数部分同理,$表示字符串以此结尾。

 

(三)isdigital,ismumerical,isdecimal的区别

此处引用他人,忘记了来处,在此备注

 

测试代码如下:

num = ['1', '1', 'Ⅷ', '一', b'50']

 

decimal = [i for i in num[:4] if i.isdecimal()]     # 仅单字节、双字节数字,byte数字报错

digital = [i for i in num if i.isdigit()]           # 非汉子

numeric = [i for i in num[:4] if i.isnumeric()]     # byte数字报错

 

print(decimal,digital,numeric, sep='\n')

 

运行结果如下:

['1', '1']

['1', '1', b'50']

['1', '1', 'Ⅷ', '一']

 

结论如下:

    1. isdigital()      --- 除汉子外

    2. isnumeric()   --- byte数字

    3. isdecimal()    --- 仅单、双字节数字

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值