Python中如何从键盘中输入字符串,统计字母,数字,符号和空格的个数?

就像这样,输入?时结束循环,否则一直输入字符串,统计对应的个数,我不清楚如何表达字母和数字

初学者的话确实可以通过 ascii table 来判断字母和数字的区别。Python 里面有两个内置函数 ord 和 chr 可用。

ascii table

通过判断其字的范围来确定是字母还是别的。确实可以达到你现在想要的目的。


不过我个人建议是,暂时不用太在意这种问题。这个也不是解决这些问题的理想方法。

当你以后学会使用正则表达式之后,回头看这个问题就十分简单了!

正则表达式才是解决字符串这类问题更理想的方法。这种方式的优势和能力之强等你学习到后就知道了。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2022-12-04

程序如下(注意图中源代码的缩进)

s=input()

while(s!="?"):

alpha=0 #字母

space=0 #空格

digit=0 #数字

other=0 #符号

for ch in s:

if 'a'<=ch and ch<='z' or 'A'<=ch and ch<='Z':

alpha+=1

elif ch==' ':

space+=1

elif '0'<=ch and ch<='9':

digit+=1

else:

other+=1

print(f"字母为{alpha}个")

print(f"空格为{space}个")

print(f"数字为{digit}个")

print(f"符号为{other}个")

s=input()

本回答被提问者采纳
相似回答