문제 설명
문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다.
제한 사항
- s는 길이 1 이상, 길이 8 이하인 문자열입니다.
문제 풀이
def solution(s):
if len(s) == 4 or len(s) == 6:
return s.isdigit()
else:
return False
s의 문자열의 길이가 4또는 6일 때 isdigit함수로 해당하는 문자열이 숫자인지 아닌지 검사한 후 숫자면 True 아니면 False를 리턴해준다.
isdigit은 해당하는 문자열이 숫자인지 아닌지를 판별하는 함수, 반대로 영어 혹은 한글로 되어있는지를 확인하려면 isalpha()를 사용하면 된다.
다른 풀이
def alpha_string46(s):
return s.isdigit() and len(s) in (4, 6)
내가 한 것이랑 방식은 같지만 좀더 깔끔한 버전
len(s)의 값이 리스트 4,5에 포함되어 있나라는 코드라서 4또는 6이 된다.