#第一种
#直接通过范围查找
shuzi =0
zhimu =0
xiahuaxian =0
qita =0
a = 'dsadasd34sda3dfsf_gfd???'
b = len(a)
for i in range(0,b):
if a[i]>='1' and a[i]<='9':
shuzi+=1
elif a[i]>='a' and a[i]<='z' or a[i]>='A' and a[i]<='Z':
zhimu+=1
elif a[i]=='_':
xiahuaxian+=1
else:
qita+=1
print("数字是:",shuzi,'个')
print("字母是:",zhimu,'个')
print("下划线是:",xiahuaxian,'个')
print("其他是:",qita,'个')
#第二种
#用字符串里面的函数方法
shuzi =0
zhimu =0
xiahuaxian =0
qita =0
a = 'dsadasd34sda3dfsf_gfd???'
b = len(a)
for i in range(0,b):
if a[i].isdigit()==True:
shuzi+=1
elif a[i].isalpha()==True:
zhimu+=1
elif a[i]=='_':
xiahuaxian+=1
else:
qita+=1
print("数字是:",shuzi,'个')
print("字母是:",zhimu,'个')
print("下划线是:",xiahuaxian,'个')
print("其他是:",qita,'个')
#第三种
#用ascll码
shuzi =0
zhimu =0
xiahuaxian =0
qita =0
a = ord('a')
z = ord('z')
A = ord("A")
Z = ord('Z')
one = ord('1')
nine = ord('9')
c = 'dsadasd34sda3dfsf_gfd???'
b = len(c)
for i in range(0,b):
if ord(c[i])>=one and ord(c[i])<=nine:
shuzi+=1
elif ord(c[i])>=a and ord(c[i])<=z or ord(c[i])>=A and ord(c[i])<=Z:
zhimu+=1
elif c[i]=='_':
xiahuaxian+=1
else:
qita+=1
print("数字是:",shuzi,'个')
print("字母是:",zhimu,'个')
print("下划线是:",xiahuaxian,'个')
print("其他是:",qita,'个')
大家一起学python-day4-统计数字、字母、下划线的数量
猜你喜欢
转载自blog.csdn.net/weixin_44239343/article/details/85272106
今日推荐
周排行