3

如何计算字符串中的位数?

例如:

>>> count_digits("ABC123")

应该返回 3。

4

3 回答 3

18

尝试这个:

len("ABC123")

像馅饼一样简单。您可能有必要阅读有关.len


编辑您的原始帖子对于您是否想要总长度或位数模棱两可。看到你想要后者,我应该告诉你,有一百万种方法可以做到,这里有三种:

s = "abc123"

print len([c for c in s if c.isdigit()])
print [c.isdigit() for c in s].count(True)
print sum(c.isdigit() for c in s)  # I'd say this would be the best approach
于 2012-10-03T21:54:19.267 回答
6

我怀疑您想计算字符串中的位数

s = 'ABC123'
len([c for c in s if c.isdigit()]) ## 3

或者也许你想计算相邻数字的数量

s = 'ABC123DEF456'
import re
len(re.findall('[\d]+', s)) ## 2
于 2012-10-03T22:03:48.800 回答
4
sum(1 for c in "ABC123" if c.isdigit())
于 2012-10-03T22:14:50.270 回答