본문 바로가기

알고리즘/알고리즘 문제

[python] 프로그래머스 > 문자열 > 문자열 다루기 기본

[문제]

1. 문제 설명

문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 a234이면 False를 리턴하고 1234라면 True를 리턴하면 됩니다.

 

2. 제한 사항

  • s는 길이 1 이상, 길이 8 이하인 문자열입니다.

3. 입출력 예

s return
a234 false
1234 true

 

[나의풀이]

def solution(s):
    if len(s) ==4 or len(s)==6:
        for i in range(len(s)):
            if not s[i].isdigit():
                return False
        return True
    else:
        return False

 

[다른사람의 풀이]

def alpha_string46(s):
    return s.isdigit() and len(s) in (4, 6)

 

[느낀점]

- 사실 숫자인지 판단해주는 isdigit함수가 있는지 까먹어서 찾아보고 풀었다.

- 문자열 자체를 배열처럼 쓸 수 있다는 것도 새로 알게 됐다.

- 다른사람이 한줄로 끝내버린것을 보고 감탄했다.