Python用户输入一个字符串,分别统计其中小写字母、大写字母、数字、空格和其他字符的个数,并在一行内输出小写字母、大写字母、数字、空格和其他字符的个数。
时间: 2024-10-14 10:07:51 浏览: 23
在Python中,可以使用内置函数以及`collections.Counter`来统计字符串中各个字符类型的频率。首先导入`collections`模块,然后编写一个函数来完成计数:
```python
from collections import Counter
def count_chars(input_str):
# 将输入字符串转为小写和大写,以合并统计大小写字母
str_lower_upper = input_str.lower() + input_str.upper()
# 创建Counter对象并计算各类字符的个数
counts = Counter(str_lower_upper)
# 统计数字、空格和其他特殊字符
digits = len([char for char in input_str if char.isdigit()])
spaces = len(input_str.split())
others = len(input_str) - (digits + spaces - counts[' '])
# 输出结果
print(f"小写字母: {counts['a']}, 大写字母: {counts['A']}")
print(f"数字: {digits}, 空格: {spaces}")
print(f"其他字符: {others}")
# 获取用户输入
input_str = input("请输入一个字符串: ")
count_chars(input_str)
阅读全文