python如何统计字符中有多少数字例如123abc中有3个数字

要求是defcount_digits():(str)->int而且不能用print... 要求是
def count_digits():
(str) -> int
而且不能用print
展开
 我来答
草红样
2012-10-04 · TA获得超过240个赞
知道小有建树答主
回答量:137
采纳率:0%
帮助的人:158万
展开全部
def count_digits(s):
return len([i for i in s if i.isdigit()])
def count_digits2(s):
return map(str.isdigit ,s).count(True)
s='a1b2c345'
print count_digits(s)
print count_digits2(s)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tim_spac
2012-10-04 · TA获得超过3628个赞
知道大有可为答主
回答量:1804
采纳率:100%
帮助的人:2024万
展开全部
from string import digits
def countdigit(s):
return len(filter(lambda x: x in digits, s))

or

import re
digitpatt = re.compile('\d')

def countdigits(s):
return len(digitpatt.findall(s))
追问
要求是
def count_digits():
(str) -> int
例如
>>>count_digits(123abc456)
6
感激不尽
追答
Type "help", "copyright", "credits" or "license" for more information.
>>> from string import digits
>>> def countdigit(s):
... return len(filter(lambda x: x in digits, s))
...
>>> countdigit('123abc456')
6
>>> import re
>>> digitpatt = re.compile('\d')
>>> def countdigits(s):
... return len(digitpatt.findall(s))
...

>>> countdigit('123abc456')
6
>>>
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式