编写生成器函数,接收一个字符串,分别统计大写字母、小写字母、数字、其他字符的个数,并以元组的形式返回结果
时间: 2023-12-12 14:27:04 浏览: 70
输入一个字符串,统计出这个字符串的英文大写字母、小写字母、数字、空格以及其它字符的个数
5星 · 资源好评率100%
好的,我可以帮你编写这个生成器函数。以下是代码:
```python
def count_chars(string):
upper_count = 0
lower_count = 0
digit_count = 0
other_count = 0
for char in string:
if char.isupper():
upper_count += 1
elif char.islower():
lower_count += 1
elif char.isdigit():
digit_count += 1
else:
other_count += 1
return (upper_count, lower_count, digit_count, other_count)
```
这个函数首先初始化了四个变量来分别统计大写字母、小写字母、数字和其他字符的个数。然后,它遍历输入的字符串中的每个字符,根据字符类型增加相应的计数器。最终,函数返回一个包含四个计数器值的元组。你可以像这样使用这个生成器函数:
```python
result = count_chars("Hello, World! 123")
print(result) # 输出:(2, 8, 3, 3)
```
这表示在输入字符串 "Hello, World! 123" 中,有 2 个大写字母,8 个小写字母,3 个数字和 3 个其他字符。
阅读全文