Django – 파이썬 날짜함수 기본

파이썬 datetime 기본 함수들이 자꾸 찾아보게 되네

비슷한 분들이 많은가봐 정리를 잘 해두셨네.

파이썬에서 날짜와 시간을 다루기 위한 기본 함수는 datetime 모듈에 정의되어 있습니다. datetime 모듈은 다음과 같은 클래스를 제공합니다.

  • datetime.date: 연, 월, 일을 나타내는 날짜 객체입니다. date.today() 함수를 사용하면 현재 날짜를 반환합니다.
  • datetime.time: 시, 분, 초, 마이크로초를 나타내는 시간 객체입니다. time 객체는 시간대 정보를 가질 수 있습니다. time.hour, time.minute 등의 속성을 사용하면 시간의 각 요소에 접근할 수 있습니다.

오늘 날짜를 가져오고 싶다면, 년도, 달, 일, 시간 각각을 바로 가져오려면

<span style="font-family: Gulim, 굴림; font-size: 11pt; background-color: initial; color: var(--wp--preset--color--primary);">from datetime import datetime</span>
<span style="font-size: 11pt; background-color: initial; color: var(--wp--preset--color--primary); line-height: 22px; font-family: Gulim, 굴림;">datetime.today()            # 현재 날짜 가져오기</span>
<span style="background-color: initial; font-family: inherit; color: var(--wp--preset--color--primary); font-size: 9pt; line-height: 22px;"></span><span style="font-size: 11pt; background-color: initial; color: var(--wp--preset--color--primary); line-height: 22px; font-family: Gulim, 굴림;">datetime.today().year      # 현재 연도 가져오기</span>
<span style="font-size: 11pt; background-color: initial; color: var(--wp--preset--color--primary); line-height: 22px; font-family: Gulim, 굴림;">datetime.today().month      # 현재 월 가져오기</span>
<span style="font-size: 11pt; background-color: initial; color: var(--wp--preset--color--primary); line-height: 22px; font-family: Gulim, 굴림;">datetime.today().day        # 현재 일 가져오기</span>
<span style="font-size: 11pt; background-color: initial; color: var(--wp--preset--color--primary); line-height: 22px; font-family: Gulim, 굴림;">datetime.today().hour        # 현재 시간 가져오기</span>
  • datetime.datetime: 날짜와 시간을 모두 나타내는 객체입니다. datetime.now() 함수를 사용하면 현재 날짜와 시간을 반환합니다. datetime 객체는 date 객체와 time 객체의 모든 속성과 메서드를 상속합니다. 또한 datetime.strptime() 함수를 사용하면 문자열을 datetime 객체로 변환할 수 있습니다.
  • datetime.timedelta: 두 날짜나 시간의 차이를 나타내는 기간 객체입니다. timedelta 객체는 일, 시간, 분, 초, 마이크로초 등의 단위로 생성할 수 있습니다. timedelta 객체는 날짜나 시간 객체와 산술 연산을 할 수 있습니다. 예를 들어, date + timedelta 는 date 보다 timedelta 만큼 늦은 날짜를 반환합니다.
  • datetime.tzinfo: 시간대 정보를 나타내는 추상 베이스 클래스입니다. 이 클래스를 상속하여 시간대를 정의할 수 있습니다. datetime.timezone 클래스는 tzinfo 클래스를 구현한 구체적인 클래스로, UTC로부터의 고정 오프셋을 가지는 시간대를 나타냅니다.

자세한 내용은 파이썬 공식 문서를 참고하십시오. 또한, 일잘러의 비밀, 엑셀 대신 파이썬으로 업무 자동화하기라는 책에서도 파이썬의 날짜와 시간 함수를 활용하는 방법을 알려줍니다.

Django – app runserver 한번만 실행하기 noreload

Django run 하면 app 이 2번 실행된다.

싫으면

./manage.py runserver -noreload

혹은 다음 코드를 app 에 입력하라는 좋은 글이 있어 킵

import os

if os.environ.get('RUN_MAIN', None) != 'true':
    default_app_config = 'server.apps.ServerAppConfig'
https://h.apoolog.com/django%EC%9D%98-appconfig-%EB%91%90%EB%B2%88-%EC%8B%A4%ED%96%89-%EB%AC%B4%ED%9A%A8%ED%99%94%ED%95%98%EA%B8%B0/

파이썬 – 날짜 함수 다음달 1일 구하기

오늘 기준 혹은 특성 시간 기준으로 다음달 1일을 구하는 함수

replace 함수를 사용해서, 특정 시간의 일을 1일로 바꾸고

relativedelta 함수를 사용해서 다음달로 증가시키도록 해서 구현

코드 참고하세요

release.change_request_date = request_date.strftime("%Y-%m-%d")
change_start_date = request_date.replace(day=1, hour=0, minute=0, second=0, microsecond=0)
change_start_date = change_start_date + relativedelta(months=1)
release.change_start_date = change_start_date.strftime("%Y-%m-%d")

strftime() 으로 원하는 문자열로 출력

python-dateutil 설치 해야 한다.

<strong>pip</strong> install python-dateutil