2016년 1월 1일은 금요일입니다. 2016년 a월 b일은 무슨 요일일까요? 두 수 a ,b를 입력받아 2016년 a월 b일이 무슨 요일인지 리턴하는 함수, solution을 완성하세요. 요일의 이름은 일요일부터 토요일까지 각각 SUN,MON,TUE,WED,THU,FRI,SAT
입니다. 예를 들어 a=5, b=24라면 5월 24일은 화요일이므로 문자열 "TUE"를 반환하세요.
a | b | result |
---|---|---|
5 | 24 | "TUE" |
from datetime import datetime, date
def solution(a, b):
answer = ''
days = ['MON', 'TUE', 'WED', 'THU', 'FRI', 'SAT', 'SUN']
day = date(2016,a,b).weekday()
answer = days[day]
return answer
Python의 모듈 중 date
의 weekday()
메소드를 활용했습니다.
weekday()의 리턴 값이 의미하는 요일은 다음과 같습니다.
월요일 : 0
화요일 : 1
수요일 : 2
목요일 : 3
금요일 : 4
토요일 : 5
일요일 : 6
따라서 문제에서는 Year는 2016년으로 고정되어 있으므로,
date(y,m,d)의 매개변수 할당 시 y=2016년으로 할당했습니다. 그리고 a,b는 각각 년/월로 들어가기 때문에 결론적으론 date(2016,a,b)
를 선언하여 구할 수 있습니다.
최종적으로 weekday
의 return값은 곧 days 배열의 index값이기 때문에 요일을 구할 수 있습니다.