输入格式 一行字符串,包含数字、字母、空格和其他符号 输出格式 输出时应依次输出数字、字母、空格和其他符号的数目,中间以空格隔开。 用python
时间: 2023-11-28 12:48:02 浏览: 37
可以使用Python的内置函数isnumeric()、isalpha()、isspace()等来判断一个字符是数字、字母还是空格,然后统计出现次数即可。代码如下:
```python
s = input() # 输入字符串
num_count = alpha_count = space_count = other_count = 0 # 初始化各类字符的计数器
for c in s: # 遍历字符串中的每个字符
if c.isnumeric(): # 如果是数字
num_count += 1
elif c.isalpha(): # 如果是字母
alpha_count += 1
elif c.isspace(): # 如果是空格
space_count += 1
else: # 其他符号
other_count += 1
print(num_count, alpha_count, space_count, other_count)
```
示例输入:
```
Hello, 123 world!
```
示例输出:
```
3 10 3 3
```
相关问题
python中将字符串小写字母,去除空格和标点符号和数字,在一行代码输出
这里有一行代码可以实现该功能:
```python
import string
s = "This is a String! 123#"
print(''.join(e.lower() for e in s if e.isalpha()))
```
输出结果为:
```
thisisastring
```
这行代码的功能是将字符串中的所有字母变为小写字母,去除空格和标点符号和数字,然后输出结果。具体实现是通过 `join` 函数和生成器表达式来实现。生成器表达式 `e.lower() for e in s if e.isalpha()` 遍历字符串 `s` 中的每个字符,如果该字符是一个字母,则将其转换为小写字母。最终生成的字符列表通过 `join` 函数连接成一个字符串。
c++输入一行字符串(可包含空格),统计组成字符串的字母,数字和符号的个数,并输出所有符号。
可以使用C++中的string库和isalnum()函数来实现统计字符串中字母、数字和符号的个数的操作。同时,可以使用遍历字符串的方式来输出所有的符号。具体的实现步骤如下:
```c++
#include <iostream>
#include <string>
using namespace std;
int main() {
string str;
getline(cin, str); // 输入一行字符串
int letter_count = 0; // 字母计数器,用于统计字母的个数
int digit_count = 0; // 数字计数器,用于统计数字的个数
int symbol_count = 0; // 符号计数器,用于统计符号的个数
cout << "所有符号为:";
for (char c : str) { // 遍历字符串中的每个字符
if (isalpha(c)) { // 如果是字母
letter_count++; // 字母计数器加1
} else if (isdigit(c)) { // 如果是数字
digit_count++; // 数字计数器加1
} else { // 否则为符号
symbol_count++; // 符号计数器加1
cout << c; // 输出符号
}
}
cout << endl << "字母的个数为:" << letter_count << endl; // 输出字母的个数
cout << "数字的个数为:" << digit_count << endl; // 输出数字的个数
cout << "符号的个数为:" << symbol_count << endl; // 输出符号的个数
return 0;
}
```
上述代码中,使用getline()函数来读取一行字符串,然后使用for循环遍历字符串中的每个字符,根据字符的类型分别将计数器加1。同时,使用if语句判断字符是否为符号,如果是符号则输出。最后输出字母、数字和符号的个数。