统计数字字符个数怎么用python做

img

img


为什么这样才十分啊,这样写会显示超出时间,有没有人可以解答一下,谢谢

可以考虑python的正则表达式实现

import re
string = "Hello 123 World 1234"
    result = re.findall(r'\d+', string)
    num = 0
    for i in result:
        num+=i
    print(num)    #最后这个就是数字的个数

因为每次调用 isdigit() 方法会占用内存,虽然通常情况下无伤大雅,但既然平台这么“苛刻”,可以使用其他更“高级”的办法:
一、比较ASCII码

s = input()
sum = 0
for char in s:
    if '0' <= char <= '9':
        sum += 1
print(sum)

二、正则表达式

import re
s = input()
sum = len(re.findall(r'\d', s))
print(sum)

三、转换字符串

s = input()
sum = len(s) - len(s.translate(str.maketrans("", "", "0123456789")))
print(sum)

input_str = input("请输入:")

count = 0
for c in input_str:
    if c.isdigit():
        count += 1

print("输入的字符串中包含{}个数字".format(count))