一、题目

问题描述

输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。

输入

输入包括一行

输出

输出包括一行,中英文字母、空格、数字和其它字符的个数

样例
输入 输出
sdf34 567_) #1as\ 5 3 6 4

二、解析

使用input()函数获取用户输入的字符串。
初始化四个变量:letters、space、digit、others,分别用于计数字母、空格、数字和其他类型的字符。
遍历字符串中的每个字符c。
如果c是字母(使用c.isalpha()判断),则letters加1。
如果c是空格(使用c.isspace()判断),则space加1。
如果c是数字(使用c.isdigit()判断),则digit加1。
如果c不是上述任何一种类型,则others加1。
使用print函数输出这四种类型字符的数量。

三、代码实现

import string

s = input('请输入一个字符串:\n')
letters = 0
space = 0
digit = 0
others = 0
for c in s:
    if c.isalpha():
        letters += 1
    elif c.isspace():
        space += 1
    elif c.isdigit():
        digit += 1
    else:
        others += 1
print(letters, space, digit, others)
注意

1.该程序只能处理单行字符串输入。
2.它对所有非字母、非空格和非数字的字符都归类为其他类型,包括标点符号、特殊字符等。

四、运行结果

在这里插入图片描述

Logo

2万人民币佣金等你来拿,中德社区发起者X.Lab,联合德国优秀企业对接开发项目,领取项目得佣金!!!

更多推荐