输入一行字符串,分别统计出其中英文字母、空格、数字和其它字符的个数。
x=input(输入字符串: ')
spa=len([i for i in x if i.isspace()])
num=len([i for i in x if i.isdigit()])
alp=len([i for i in x if i.isalpha()])
other=len(x)-spa-num-alp
print('space:',spa)
print('digit:',num)
print('alpha:',alp)
print('other:',other)
本题主要是训练字符串函数isspace、isdigit、isalpha的运用,其他语言解决本题时可能用的比较多的是ASCII值比较,python也可以那样做,如果你愿意的话(例如如果符合 ord('0')<=ord(i)<=ord('9') 那么 i就是数字)。
当然空格计数也能直接使用x.count(' ')
可能也有小伙伴是用统计的形式解决本题,也是没有问题的。
string=input(" 输入字符串: ")
alp=0
num=0
spa=0
oth=0
for i in range(len(string)):
if string[i].isspace():
spa+=1
elif string[i].isdigit():
num+=1
elif string[i].isalpha():
alp+=1
else:
oth+=1
print('space: ',spa)
print('digit: ',num)
print('alpha: ',alp)
print('other: ',oth)