https://www.acmicpc.net/problem/10820
대문자, 소문자, 숫자, 공백은 isupper(), is lower(), isdigit(), isspace()으로 구분했다.
근데, 입력을 어떻게 받아야 하는지를 몰라 찾아보니 read.std.readline()을 이용해야 한다고 했다.
import sys
while True :
line = sys.stdin.readline().rstrip('\n')
if not line:
break
arr = [0,0,0,0]
for i in line:
if i.islower():
arr[0] += 1
elif i.isupper():
arr[1] += 1
elif i.isdigit():
arr[2] += 1
elif i.isspace():
arr[3] += 1
print(arr[0], arr[1], arr[2] , arr[3])
sys.stdin.readline() : 반복문으로 여러 줄을 입력받을 때 유용합니다. input()과는 다르게 시간초과 발생하지 않습니다. 또한 입력 받을시 \n도 같이 포함되므로 rsrtip()을 이용해 '\n'을 지웁니다.