같은 해의 두 날짜 사이 간격
글. 오상문 sualchi@daum.net
1월 1일부터 지난 날짜를 각각 구하여 뺄셈을 한다.
각 달의 날짜 수는 다음과 같다고 가정한다.
31,28,31,30,31,30,31,31,30,31,30,31
#--------------------------------------------
# 1월1일에서 특정 날짜의 간격 돌려줌 ( solution1 함수에서 사용 )
def daySum(mon, day):
monList = [0,31,28,31,30,31,30,31,31,30,31,30,31]
return sum(monList[1:mon]) + day - 1
def solution1(startMonth, startDay, endMonth, endDay):
startTotal = daySum(startMonth, startDay)
endTotal = daySum(endMonth, endDay)
return endTotal - startTotal
#-----------------------------------------------
# solution2 함수는 직접 간격을 구하여 계산함
def solution2(startMonth, startDay, endMonth, endDay):
mList = [0,31,28,31,30,31,30,31,31,30,31,30,31]
startTotal = sum(mList[1:startMonth]) + startDay - 1
endTotal = sum(mList[1:endMonth]) + endDay - 1
return endTotal - startTotal
#---------------------------------------------------
#테스트
start_mon = 1
start_day = 2
end_mon = 2
end_day = 2
ret1 = solution1(start_mon, start_day, end_mon, end_day)
ret2 = solution2(start_mon, start_day, end_mon, end_day)
print("solution1 함수 반환값", ret1) # 31
print("solution2 함수 반환값", ret2) # 31
<이상>
'Python 기초' 카테고리의 다른 글
파이썬, 리스트의 가장 큰 수 개수가 작은 수 개수보다 몇 배 많은가 (0) | 2019.10.17 |
---|---|
파이썬, 패킹(packing) 언패킹(unpacking) (0) | 2019.10.16 |
파이썬, 정수가 0인지 검사하는 다양한 방법과 속도 비교 (0) | 2019.10.15 |
파이썬, 사이즈별 셔츠 수량 구하기 (0) | 2019.10.15 |
파이썬, sort(), sorted() 함수 활용하기 (0) | 2019.10.12 |