문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다.
제한 사항
s는 길이 1 이상, 길이 8 이하인 문자열입니다.
생각과정
1. if 문으로 문자열의 길이가 4 or 6 인지 확인
2. for 문 돌면서 isalpha 함수 사용해서 True가 나오면 for 문 탈출
def solution(s):
answer = True
if len(s)==4 or len(s)==6:
for i in range(len(s)):
if s[i].isalpha()==True:
answer=False
break
else:
answer=False
return answer
1)
def alpha_string46(s):
return s.isdigit() and len(s) in (4, 6)
2)
def solution(s):
l = len(s)
try:
a = int(s)
if l == 4 or l == 6:
return True
else:
return False
except:
return False
// s를 int로 형변환을 해서 오류가 나지 않으면 True~
개선점
- for 문을 돌지 않고도 isdigit을 쓰면 된다는 걸 왜 생각못했지~?~??
- in 을 사용해보자!!