[파이썬_기초][8. 파이썬에서 날짜계산 및 적금계산-블로그 요약]
파이썬에서 날짜를 계산하는 방법과 적금을 계산하는 방법에 설명하겠습니다.
[파이썬_기초]8. 파이썬에서 날짜계산 및 적금계산
파이썬에서 날짜를 계산하는 함수에 대해서 설명하겠습니다.
여러가지 방법의 날짜계산이 있지만, 저는 두개의 날짜를 가지고 계산하는 방법에 대해서만 진행하겠습니다.
이 방법은 적금을 계산하려다고 만든 내용입니다.
전문가가 아니라서 많이 코딩자체가 조잡스러울 수 있으므로 참조 부탁드립니다.
1.(기초)날짜계산
간단하게 relativedelta 라이브러리를 불러와서 실행하면 쉽게 날짜 차이를 확인 할 수 있습니다.
[입력값]
[결과값]
[엑셀과 비교]
엑셀에서도 동일하게 두개의 날짜를 확인할 수 있는 함수가 있습니다. 결과 값을 비교 해 보겠습니다.
엑셀에서 사용할 함수는 DATEIF 함수 입니다.
[엑셀 결과값 #1]
[엑셀 결과값 #2]
[엑셀 결과값 #3]
2. (응용)적금계산
이번에는 응용편입니다.
날짜를 계산을 통해서 현재까지 납부하고 있는 적금의 총액을 구하는 함수를 만들어 보았습니다.
람다함수나 다른 방법을 쓰면, 함수 자체를 짧게 작성 할 수 있으나, 제가 보기가 불편해서, 기본형태로 작성했습니다.
(아직 전문가가 아니라서, 아주 기본형태가 보기가 편합니다.)
[구성]
1. 날짜 및 총액 함수 --> def cal_date(money, begin, last, add_money)
-. 입력항목: money, begin, last, add_money
1) 매월 납부 금액 = money
2) 납부를 시작하는 날짜 = begin
3) 납부가 종료되는 날짜 = last
4) 납부를 시작할 때, 넣어두었든 금액 = add_money
* 납부를 시작할 때, 돈을 넣어두면 1번을 납부한 것으로 생각함.
-. 출력항목
1) 총액 = beda_total
2) 납부를 완료한 날짜(연과 월) = beda_b_year, beda_b_year
3) 납부를 시작할 떄 돈을 넣으면 "1", 돈을 넣지 않으면 "0"
4) 납부를 해야하는 날짜(연과 월) = beda_l_year, beda_l_year
2. 날짜를 표현하는 함수
-. 날짜 및 총액함수에서 연도와 월의 값을 받아서 출력함.
(추가적으로 몇번은 납부했는지를 계산하여 추가함.)
-. ??year, ??month (?? times)의 형태로 출력함.
def paid_du: 납부를 완료한 날짜와 납부횟수 출력
def py_du: 납부를 해야할 날짜와 납부횟수
[파이썬 코드]
1. 날짜 및 총액 함수
2. 날짜를 표현하는 함수
[출력값#1]
* 금일 함수를 실행하는 날짜는 2022/06/05 입니다.
1) 매월 납부 금액(money): 10,000
2) 납부를 시작하는 날짜(begin): 2020/02/12
3) 납부가 종료되는 날짜(last): 2028/02/12
4) 납부를 시작할 때, 넣어두었든 금액(add_money): 100,000
[출력값#2]
1) 매월 납부 금액(money): 10,000
2) 납부를 시작하는 날짜(begin): 2022/06/12
3) 납부가 종료되는 날짜(last): 2028/02/12
4) 납부를 시작할 때, 넣어두었든 금액(add_money): 100,000
[출력값#4]
1) 매월 납부 금액(money): 400,000
2) 납부를 시작하는 날짜(begin): 2013/04/24
3) 납부가 종료되는 날짜(last): None
4) 납부를 시작할 때, 넣어두었든 금액(add_money): 400,000
*** Your memories make your destiny ***
'[파이썬] > [파이썬]기초' 카테고리의 다른 글
[파이썬_기초]10. 파이썬 실행파일 만들기 (0) | 2022.06.20 |
---|---|
[파이썬_기초]9. 파이썬으로 요일 표시 (0) | 2022.06.12 |
[파이썬_기초]7. 반올림 함수(Round 및 제작함수) (0) | 2022.05.20 |
[파이썬_기초]6. 파이썬으로 파일위치 찾기(OS_Path) (0) | 2022.05.19 |
[파이썬_기초]5. Random함수 (0) | 2022.05.10 |
댓글