用python计算输出字符串 s 中汉字和标点符号的个数。
时间: 2024-05-03 13:20:40 浏览: 187
Python代码源码-实操案例-框架案例-使用Python逆序输出字符串.zip
可以使用Python中的正则表达式来筛选汉字和标点符号,代码如下:
```python
import re
s = "这是一个测试,包含中文和标点符号!"
pattern = re.compile("[\u4e00-\u9fa5,。!?]")
result = pattern.findall(s)
print(len(result))
```
解释一下代码:
- 第2行定义一个字符串变量`s`,里面包含中文和标点符号。
- 第3行使用正则表达式`[\u4e00-\u9fa5,。!?]`定义一个匹配规则,这个规则可以匹配汉字和标点符号。
- `\u4e00-\u9fa5`表示汉字的范围,包括Unicode编码为`U+4e00`至`U+9fa5`之间的字符。
- `,。!?`表示标点符号,包括中文的逗号、句号、叹号和问号。
- 第4行使用`pattern.findall(s)`方法在字符串`s`中查找匹配规则的字符串,返回一个包含所有匹配结果的列表。
- 第5行打印列表的长度,即汉字和标点符号的个数。
输出结果为:`9`,即`s`字符串中包含9个汉字和标点符号。
阅读全文