python中isdigit() isalpha()用于判断字符串的类型问题

 更新时间:2022年11月03日 17:09:51   作者:努力学python的设计师  
这篇文章主要介绍了python中isdigit() isalpha()用于判断字符串的类型问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

isdigit() isalpha()用于判断字符串的类型

要求1

统计某个字符串中的数字数量并输出,例如字符串为“adsfsd1adf23sdfa12”

思路:遍历字符串,用isdigit()方法判断是否为数字,如果为数字,统计+1

代码如下:

str=input("请输入任意字符串")
num=0   #统计基数
for i in str:  #遍历字符串
    if i.isdigit():     #判断是否为数字
        num+=1
print(num)

要求2

在要求1的基础中统计出现数字的次数,比如12dsd23dsddf1,其中出现数字12,23,1共3次。

思路:此时如果利用上述思路,无法实现要求,故转换思路。

  • 1.遍历字符串,用 isalpha()判断字符串类型是否Wie字符串
  • 2.将字符串中的字符都换成空格,此时字符串中只有数字和空格
  • 3.将原有字符串用split()转换为列表
  • 4.统计列表元素长度

代码如下:

s=input("")
num=0   #统计基数
for i in s: #遍历字符串
    if i.isalpha(): #判断是否为字符串
        s=s.replace(i," ")  #如果是字符串,替换为空格
b=s.split()     #拆分字符串
print(len(b))   #统计字符串长度

isdigit()、isalpha()、isalnum() 三个函数的区别和注意点

一、isdigit()

python关于 isdigit() 内置函数的官方定义:

S.isdigit() -> bool        
        Return True if all characters in S are digits
        and there is at least one character in S, False otherwise.

翻译:

S.isdigit()返回的是布尔值:True False

S中至少有一个字符且如果S中的所有字符都是数字,那么返回结果就是True;否则,就返回False

S1 = '12345'       #纯数字
S2 = '①②'        #带圈的数字
S3 = '汉字'        #汉字
S4 = '%#¥'        #特殊符号

print(S1.isdigit())
print(S2.isdigit())
print(S3.isdigit())
print(S4.isdigit())

# 执行结果:
True     
True
False
False

二、isalpha()

python关于 isalpha() 内置函数的官方定义:

S.isalpha() -> bool        
        Return True if all characters in S are alphabetic
        and there is at least one character in S, False otherwise.

翻译:

S.isalpha()返回的是布尔值:True False

S中至少有一个字符且如果S中的所有字符都是字母,那么返回结果就是True;否则,就返回False

S1 = 'abc汉字'     #汉字+字母
S2 = 'ab字134'     #包含数字
S3 = '*&&'         #特殊符号

print(S1.isalpha())
print(S2.isalpha())
print(S3.isalpha())

#执行结果
True
False
False

三、isalnum()

python关于 isalnum() 内置函数的官方定义:

S.isalnum() -> bool 
        Return True if all characters in S are alphanumeric
        and there is at least one character in S, False otherwise.

翻译:

S.isalnum()返回的是布尔值:True False

S中至少有一个字符且如果S中的所有字符都是字母数字,那么返回结果就是True;否则,就返回False

S1 = 'abc汉字1'    #字母+汉字+数字
S2 = '①②③'      #带圈的数字
S3 = '%……&'       #特殊符号

print(S1.isalnum())
print(S2.isalnum())
print(S3.isalnum())

#执行结果
True
True
False

注意点:

1.python官方定义中的字母:大家默认为英文字母+汉字即可

2.python官方定义中的数字:大家默认为阿拉伯数字+带圈的数字即可

相信只要理解到这两点,这三个函数的在使用时的具体返回值,大家就很明确了~~

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Yolov5更换BiFPN的详细步骤总结

    Yolov5更换BiFPN的详细步骤总结

    将YOLOv5中的PANet层修改为EfficientDet-BiFPN,实现自上而下与自下而上的深浅层特征双向融合,明显提升YOLOv5算法检测精度,下面这篇文章主要给大家介绍了关于Yolov5更换BiFPN的详细步骤,需要的朋友可以参考下
    2022-12-12
  • Django实现发送邮件找回密码功能

    Django实现发送邮件找回密码功能

    在各大网站上,一定都遇到过找回密码的问题,通常采用的方式是通过发送带有验证码的邮件进行身份验证,本文将介绍通过Django实现邮件找回密码功能,需要的朋友可以参考下
    2019-08-08
  • Python实现带图形界面的炸金花游戏

    Python实现带图形界面的炸金花游戏

    诈金花又叫三张牌,是在全国广泛流传的一种民间多人纸牌游戏,它具有独特的比牌规则。本文将通过Python语言实现带图形界面的诈金花游戏,需要的可以参考一下
    2022-12-12
  • 使用Python进行时间序列分析的8种绘图类型

    使用Python进行时间序列分析的8种绘图类型

    时间序列数据是按时间顺序按固定时间间隔排列的观测值的集合,每个观察对应于一个特定的时间点,并且可以以各种频率(例如,每天、每月、每年)记录数据,本文介绍了几种类型的绘图,可帮助您使用 Python 进行时间序列分析,并提供使用可免费访问的数据集的详细示例
    2023-09-09
  • Python采集C站热榜数据实战示例

    Python采集C站热榜数据实战示例

    这篇文章主要为大家介绍了Python采集C站热榜数据实战示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-05-05
  • Python实现聚类K-means算法详解

    Python实现聚类K-means算法详解

    这篇文章主要介绍了Python实现聚类K-means算法详解,K-means(K均值)算法是最简单的一种聚类算法,它期望最小化平方误差,具体详解需要的朋友可以参考一下
    2022-07-07
  • Python MySQLdb模块连接操作mysql数据库实例

    Python MySQLdb模块连接操作mysql数据库实例

    这篇文章主要介绍了Python MySQLdb模块连接操作mysql数据库实例,本文直接给出操作mysql代码实例,包含创建表、插入数据、插入多条数据、查询数据等内容,需要的朋友可以参考下
    2015-04-04
  • Python获取接口请求耗时的方法详解

    Python获取接口请求耗时的方法详解

    你想知道我们请求一个url的时候,握手和请求资源分别占用多长时间么?今天我们就来使用python写个小案例来看看,感兴趣的可以跟随小编一起了解一下
    2023-04-04
  • python实现简单聊天应用 python群聊和点对点均实现

    python实现简单聊天应用 python群聊和点对点均实现

    这篇文章主要为大家详细介绍了python实现简单聊天应用,python群聊和点对点均实现,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-09-09
  • Python虚拟环境virtualenv创建及使用过程图解

    Python虚拟环境virtualenv创建及使用过程图解

    这篇文章主要介绍了Python虚拟环境virtualenv创建及使用过程图解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-12-12

最新评论