一、参考解法:
import re
def splitFunc( ):
tmpStr = input('请输入字符串:')
charNum = 0
digNum = 0
spaceNum = 0
otherNum = 0
for i in range(len(tmpStr)):
if re.match('[a-zA-Z]',tmpStr[i]):
charNum +=1
elif re.match('\d',tmpStr[i]):
digNum +=1
elif re.match('\s',tmpStr[i]):
spaceNum +=1
else:
otherNum +=1
print('字符:',charNum)
print('数字:',digNum)
print('空格:',spaceNum)
print('其他:',otherNum)
splitFunc()
二、参考解法:
s =input('请输入字符串:')
dic={'letter':0,'integer':0,'space':0,'other':0}
for i in s:
if i >'a' and i<'z' or i>'A' and i<'Z' :
dic['letter'] +=1
elif i in '0123456789':
dic['integer'] +=1
elif i ==' ':
dic['space'] +=1
else:
dic['other'] +=1
print('统计字符串:',s)
print(dic)
print('------------显示结果2---------------')
for i in dic:
print('%s='%i,dic[i])
print('------------显示结果3---------------')
for key,value in dic.items():
print('%s='%key,value)