还有更短的吗?

正则大法好,随便怎么搞,代码写的少,看了都说好

import re 
while True:
    try:
        s = input()
    except:
        break
    print(len(re.findall(r'[a-zA-Z]', s)))
    print(len(re.findall(r'\s', s)))
    print(len(re.findall(r'[0-9]', s)))
    print(len(re.findall(r'[^a-zA-Z0-9 \t]', s)))