IT/언어

[python] 시간을 10분 단위로만 기록되도록 하기(시간 내림)

개발자 두더지 2022. 7. 24. 19:54
728x90

Django 프로젝트중 현재의 시간 데이터를 10분 단위로 기록되도록 해야 할 필요성이 있었기에(예를 들어, 데이터 기록 당시의 시간이 12시 58분 12초라면 DB에는 12시 50분 0초로 기록되도록) 그러한 기능을 구현할 수 있는 코드를 조사해 간단하게 정리해봤다. 정말 짧은 포스트가 될 것이다.
코드 3줄로 단순하다.

from datetime import datetime

INTERVAL_MINUTE = 10

time = datetime.strptime('2022년7월24일 12시59분1초', '%Y년%m월%d일 %H시%M분%S초')
tmp = time.replace(minute=time.minute - time.minute % INTERVAL_MINUTE, second=0, microsecond=0)
print(time.isoformat()) # 2022-07-24T12:59:01
print(tmp.isoformat()) # 2022-07-24T12:50:00

10분 단위가 아니라 20분 단위면 INTERVAL_MINUTE 변수를 조정해주면 된다.


참고자료
https://zenn.dev/bayashi1005/articles/7bd57ef7d1982c

728x90