Programming/Python

[Python] datetime 모듈

R 에는 lubridate package가 있듯이, Python 에는 datetime module모듈이 있다.

datetime module

날짜와 시간 데이터를 다루는데에 유용한 파이썬 스탠다드 라이브러리이다.

 

  • timedelta : 기간을 표현하기 위해 사용
  • timezone : 시간대를 표현하기 위해 사용
  • date : 날짜를 표현하기 위해 사용
  • time : 시간을 표현하기 위해 사용
  • datetime : 날짜와 시간을 동시에 표현하기 위해 사용

hh:mm:ss으로 형태 변경 사용자 함수

# 시간 표시 함수
def format_time(elapsed):

    # 반올림
    elapsed_rounded = int(round((elapsed)))
    
    # hh:mm:ss으로 형태 변경
    return str(datetime.timedelta(seconds=elapsed_rounded))
  • 모델 학습 단계에서 경과를 표시할 때 유용하다.

경과 시간 확인

import time

# 시작 시간 설정
t0 = time.time()

# 데이터로더에서 배치만큼 반복하여 가져옴
for step, batch in enumerate(train_dataloader):
    # 경과 정보 표시
    if step % 500 == 0 and not step == 0:
    	elapsed = format_time(time.time() - t0)
        print('  Batch {:>5,}  of  {:>5,}.    Elapsed: {:}.'.format(step, len(train_dataloader), elapsed))
  1.  시작 시간을 설정한다.

  2.  각 반복 과정마다 경과된 시간을 저장한다.

  3.  경과 과정 중간에 출력하여 시각적으로 진행상태를 확인한다.

 

[참고]

[파이썬] datetime 모듈로 날짜/시간 처리하기 (www.daleseo.com/python-datetime/)