이제는 어느 누구나 간단한 로직은 ChatGPT를 이용해서 코딩하고 있을 거라 생각된다.
한동안 코딩을 못하다가 다시 급히 해야할 일이 있어 로직하나 챗집사에게 맡겨봤다.
프롬프트
내일이 휴일인지 오늘이 휴일인지를 확인해주는 python script를 만들어줘.
알고싶은 날짜가 토요일과 일요일은 자동으로 휴일로 판단하면 되고 그 외의 휴일은 Tab으로 구분된 휴일날짜휴일이름 형태로 저장된 holidays.tsv 파일을 읽어서 판단에 사용해. 이때 휴일날짜의 포맷은 %Y%m%d로하자. 2023년 및 2024년 대한민국 공휴일을 이 tsv파일에 저장하게 저 형태로 된 데이터를 코드와 함께 별도의 코드 블럭에 보여줘.
from datetime import datetime, timedelta
def load_holidays(file_path):
holidays = {}
with open(file_path, 'r') as f:
lines = f.readlines()
for line in lines:
date, name = line.strip().split('\t')
holidays[date] = name
return holidays
def check_holiday(date, holidays):
date_str = date.strftime('%Y%m%d')
if date_str in holidays:
return True, holidays[date_str]
return False, None
def main():
holidays = load_holidays('holidays.tsv')
today = datetime.now()
tomorrow = today + timedelta(days=1)
is_today_holiday, today_holiday_name = check_holiday(today, holidays)
is_tomorrow_holiday, tomorrow_holiday_name = check_holiday(tomorrow, holidays)
if is_today_holiday:
print(f'Today ({today.strftime("%Y-%m-%d")}) is a holiday: {today_holiday_name}')
else:
print(f'Today ({today.strftime("%Y-%m-%d")}) is not a holiday.')
if is_tomorrow_holiday:
print(f'Tomorrow ({tomorrow.strftime("%Y-%m-%d")}) is a holiday: {tomorrow_holiday_name}')
else:
print(f'Tomorrow ({tomorrow.strftime("%Y-%m-%d")}) is not a holiday.')
if __name__ == '__main__':
main()
# 2023년
20230101 신정
20230121 설날
20230122 설날
20230123 설날
20230124 설날
20230301 삼일절
20230505 어린이날
20230527 부처님 오신 날
20230606 현충일
20230815 광복절
20230928 추석
20230929 추석
20230930 추석
20231003 개천절
20231009 한글날
20231225 크리스마스
# 2024년
20240101 신정
20240209 설날
20240210 설날
20240211 설날
20240301 삼일절
20240505 어린이날
20240515 부처님 오신 날
20240606 현충일
20240815 광복절
20240916 추석
20240917 추석
20240918 추석
20241003 개천절
20241009 한글날
20241225 크리스마스