문제
처음 작성한 코드
def solution(s):
answer = True
a = 0
if len(s)==4 or len(s)==6:
for i in s:
if i!='0' and i!='1' and i!='2' and i!='3' and i!='4' and i!='5' and i!='6' and i!='7' and i!='8' and i!='9':
a = 1
if a!=0:
answer=False
else: answer=False
return answer
코드 리뷰 후
def solution(s):
import re
return bool(re.match('^(\d{4}|\d{6})$',s))
깨달은 점
정규식을 공부해야겠다.
위 문제에서 사용한 정규식은 \d{4}|\d{6} 이다.
\d는 0~9까지의 숫자를 의미한다. {4}는 4번 반복, 즉 4자리 숫자인지 혹은 6자리 숫자인지를 판별하기 위해 사용한 것이다.
파이썬의 세계는 신기하다.. 푸헹~
'Programmers' 카테고리의 다른 글
나누어 떨어지는 숫자 배열 (0) | 2020.12.29 |
---|---|
수박수박수박수박수박수? (0) | 2020.12.29 |
문자열 내 마음대로 정렬하기 (0) | 2020.12.29 |
서울에서 김서방 찾기 (2) | 2020.12.28 |
가운데 글자 가져오기 (0) | 2020.12.28 |