Python

[python] time 모듈

비번변경 2021. 10. 18. 22:36
time
간단한 시간 데이터를 처리할 때 사용하는 파이썬 내장 모듈
주로 epoch time을 다룰 때 사용한다

 

Epoch Time

Unix Time, POPIX Time

UTC를 기준으로 1970년 1월 1일 0시 0분 0초로부터의 경과 시간을 나타낸다. 흔히 timestamp라고 하기도 한다.

시간대, 윤년, 윤달, 양력, 응력 등의 개념 등을 모델링하지 않고 시간을 단순히 숫자로 저장하고 처리할 수 있다.

 

time_struct

인간 친화적이지 않은 timestamp가 주어졌을 때, time 모듈이 날짜와 시간을 표현하기 위해 사용하는 클래스

이름 속성 비고
tm_year 연도 2021, 1992
tm_mon 1~12
tm_mday 1~31
tm_hour 0~23
tm_min 0~59
tm_sec 0~61
tm_wday 요일 0~6 (0: 월요일)
tm_yday 연중 경과일 1~366
tm_isdst 일광절약타임 적용여부 0: 미적용 1: 적용 -1: 모름

 

time 모듈 내 함수

  • time()
    현재 timestamp를 얻는다.
    현재 unix timestamp를 소수로 리턴한다. 정수 부분은 초를 뜻하고 소수 부분은 마이크로 초를 뜻한다.
    import time
    
    print(time.time())

    실행 결과

    time()

  • localtime()
    전달받은 timestamp를 현지 시간대를 기준으로 하는 time_struct형의 데이터로 변환
    매개변수 없이 호출하면 현재 시간을 time_struct형 데이터로 변환한다.
    import time
    
    print(time.localtime(time.time()))​

    실행 결과

    localtime()

  • sfrftime()
    time_struct형 데이터를 특정 포맷의 문자열로 변환
    지정할 포맷 규칙은 https://docs.python.org/3.8/library/time.html#time.strftime 을 참고하는 것을 권한다.
    import time
    
    print(time.strftime("%Y-%m-%d", time.localtime(time.time())))​

    실행 결과

    sfrftime()
  • strptime()
    특정 포맷의 문자열을 time_struct형 데이터로 변환
    import time
    
    print(time.strptime("2021-04-02", "%Y-%m-%d"))

    실행 결과
    strptime()
  • sleep()
    주어진 초 단위 시간 동안 프로그램 실행 지연
    import time
    
    time.sleep(10)​

참고 문서

https://www.daleseo.com/python-time/