python - 计算字符串中的字母数字和标点符号

标签 python

我如何编写一个程序来计算字符串中的字母、数字和标点符号(分别)?

最佳答案

对于稍微更精简/更快的版本,还有

count = lambda l1,l2: sum([1 for x in l1 if x in l2])

例如:

count = lambda l1,l2: sum([1 for x in l1 if x in l2])

In [11]: s = 'abcd!!!'

In [12]: count(s,set(string.punctuation))                                                                                                      
Out[12]: 3

使用集合应该可以让你的速度有所提升。

还取决于字符串的大小,我认为您也应该获得优于过滤器的内存优势。

关于python - 计算字符串中的字母数字和标点符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6969268/

相关文章:

python - 如何将输入的二进制文件转换为文本python

python - Matplotlib colorbar 不绘制四肢边缘

python - Gevent Pywsgi 服务器 - 多处理?

python - 在python中使用pandas根据其他列中给定的值选择列

python - Pyomo 热启动

python - 如何将具有多个 python 脚本和图像的 pygame 程序转换为 exe?

python - 为什么我从 "TypeError: ' 之类的代码中得到 "5(side_length**2)"int' object is not callable"?

python - 如何使用 matplotlib 显示两个数字?

python - 在python中将多个png组合成一个pdf

python - 比较字符串中的字符