알고리즘 풀이/프로그래머스

[Level1] 문자열 다루기 기본

mhko411 2021. 1. 20. 21:51
728x90

문제

문자열의 길이가 4 또는 6이고 숫자로만 구성되어 있으면 True,

그렇지 않다면 False를 반환하는 함수를 만들어본다.

문자열의 길이는 1이상 8이하이다.

 

입력

"a123"

 

출력

False


1. 처음에 문자열의 길이가 4가 아니고 6이 아니면 바로 False를 반환하도록 한다.

2. 이후 문자열을 탐색하여 'a' ~ 'z'에 속해있거나 'A' ~ 'Z'에 속해있으면 answer에 False를 대입하고 탐색을 종료한다.

3. 최종 answer를 출력한다. (위에 조건에 걸리지 않았다면 answer는 그대로 True일 것이다.)

 

def solution(s):
    answer = True
    s_len=len(s)
    if s_len!=4 and s_len!=6:
        answer=False
        return answer
    
    
    for idx in range(s_len):
        if s[idx]>='a'and s[idx]<='z':
            answer=False
            break
        elif s[idx]>='A' and s[idx]<='Z':
            answer=False
            break
    return answer