Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

파이썬으로 현재 시간 구하는 방법 – time 모듈 활용 가이드

파이썬에서 현재 시간을 다룰 때 가장 기본이 되는 것은 time 모듈입니다. 에포크(epoch, 1970년 1월 1일 00:00:00 UTC) 이후 경과된 초를 나타내는 부동 소수점 값은 사람이 읽기 어려운 형태이기 때문에, 이를 해석 가능한 시간 튜플(time-tuple)로 변환하는 과정이 필요합니다.

에포크 시간을 시간 튜플로 변환하기

부동 소수점 형태의 타임스탬프를 시간 튜플로 바꾸려면, 해당 값을 localtime()과 같은 함수에 인자로 전달하면 됩니다. 그러면 연도, 월, 일, 시, 분, 초 등 아홉 개 항목이 모두 채워진 struct_time 객체가 반환됩니다.

예제 코드

#!/usr/bin/python
import time

localtime = time.localtime(time.time())
print("Local current time :", localtime)

위 예제에서 time.time()은 현재 시각을 에포크 이후 경과 초(부동 소수점)로 반환하고, time.localtime()이 이 값을 지역 시간대 기준의 시간 튜플로 변환합니다.

실행 결과

위 코드를 실행하면 다음과 같은 결과가 출력되며, 이 값은 원하는 어떤 형태로든 포맷팅하여 표시할 수 있습니다.

Local current time : time.struct_time(tm_year=2013, tm_mon=7,
tm_mday=17, tm_hour=21, tm_min=26, tm_sec=3, tm_wday=2, tm_yday=198, tm_isdst=0)

반환된 시간 튜플의 의미

  • tm_year: 연도 (예: 2013)
  • tm_mon: 월 (1~12)
  • tm_mday: 일 (1~31)
  • tm_hour, tm_min, tm_sec: 시, 분, 초
  • tm_wday: 요일 (0=월요일 ~ 6=일요일)
  • tm_yday: 연중 몇 번째 날인지 (1~366)
  • tm_isdst: 서머타임 적용 여부 (0=미적용, 1=적용, -1=알 수 없음)

참고 사항

예제 코드는 파이썬 3 문법(print() 함수) 기준으로 작성되었습니다. 파이썬 2에서는 print "..." 형태의 print 문을 사용했지만, 현재는 지원이 종료되었으므로 파이썬 3 이상 환경에서 위 코드를 그대로 사용하는 것이 좋습니다. 또한 가독성 좋은 문자열로 출력하고 싶다면 time.strftime()이나 datetime 모듈을 함께 활용하는 것이 유용합니다.