본문 바로가기
Python/Python Advanced

4. Python - time 모듈

by Rosmary 2020. 6. 8.
728x90
반응형

이번 포스팅에서는 Python의 time 모듈에 대해 작성하려고 한다. 이 모듈은 datetime 모듈과 달리, time.py 파일이 존재하지 않는다. 무슨 말이냐면, 이 time 모듈은 Python이 아니라, 다른 언어로 작성되어 있다는 말이다. 그래서인지, 프로그래밍을 진행하다보면, datetime 모듈에 비해서 자주 사용하는 기능이 그닥 많지는 않다. 그리고, datetime 모듈과 유사한 기능을 가지는 함수도 있지만 약간 차이가 존재하기도 한다. 지금부터 자주 사용하는 time 내 모듈에 대해 하나식 알아보자.

 

1. time() 함수

 

time 모듈 내의 time() 함수는 현재의 시간을 표현한다는 점에서 datetime.now() 또는 datetime.today()와 유사하다. 하지만 표현 방식이 조금 다른데, time.time()의 경우, 1970년 1월 1일부터 현재까지의 시간을 초(second)로 나타낸다.

 

 

 

 

2. sleep() 함수

 

sleep() 함수는 프로그램 코드 내의 특정 동작을 일정 시간동안 정지하도록 만드는 함수다. for 문을 이용하여 1부터 10까지 출력하도록 코드를 작성했다고 가정해보자. 숫자를 출력함과 동시에, 이들 숫자가 출력될 당시의 시간을 time.time() 함수로 같이 출력하면 아래와 같이 나타난다.

 

 

 

 

이 코드는 0.1초도 안되는 사이에, 1부터 10까지의 숫자를 출력해 낼 것이다. 그런데, 프로그래밍을 하다보면, 이 숫자들을 1초 간격으로 차례로 출력해야 할 상황이 발생한다. 이를 위해 사용하는 함수가 sleep()이다. 

 

sleep() 함수는 하나의 인자를 가진다. 이 인자는 숫자 형태이며, 특정 코드의 동작을 숫자에 작성된 초(second)만큼 중지시킨다. 위에서 작성한 for 문에 sleep() 함수를 적용해 다시 동작시키면, 1부터 10까지의 숫자가 1초마다 출력되는 것을 볼 수 있다.

 

 

 

 

 

3. strftime() 및 strptime() 함수

 

이 두 함수는 datetime 모듈에도 존재하던 그 함수가 맞다. time 모듈에서 이 두 함수의 사용법은 datetime 모듈 내의 두 함수 사용법과 완전히 동일하다. 사실, datetime 모듈 내의 strftime()함수와 strptime() 함수의 정의 내용을 보면 알겠지만, 이 두 함수가 출력하는 값이 바로 time 모듈 내의 strftime()과 strptime() 함수 결과값이다.

 

 

 

 

strftime()과 strptime() 함수의 상세 사용법은 이전의 포스팅에서도 작성한 내용이기 때문에, 본 포스팅에서는 따로 설명하지 않는다. 상세 사용법은 여기를 클릭하면 확인할 수 있다.


오늘 포스팅 한 time 모듈은 사실 datetime 모듈로 인해 날짜와 시간 관련된 작업에 사용되는 경우는 매우 드물다. 사실상, sleep() 함수의 사용을 위해 많이 쓰는 편이라, import 형태 역시 from time import sleep 형태로 많이 사용한다. 

 

 

 

 

FIN.

 

 

 

 

 

반응형

댓글