Python 일시 정지 sleep(초,밀리초) 함수 사용 방법 및 예제

파이썬에서 동작을 실행 중에 1초 동안 대기했다가 처리를 해야 하거나 다른 API에서 응답을 기다리기 위해 잠시 멈춰야 하거나 하는 경우가 있습니다.

이러한 경우에는 Pythontime 모듈에 있는 sleep 함수를 사용하여 동작을 일시적으로 멈출 수 있습니다.

 

sleep 함수

sleep을 사용하기 위해서는 time 모듈을 import 해야 합니다.

이번 포스팅에서는 sleep 함수만을 사용하기 때문에 time 모듈의 sleep 함수만을 import 하겠습니다.

sleep import

from time import sleep

 

위처럼 import를 하게 되면 time 모듈의 sleep 함수만을 사용할 수 있습니다.

import를 해봤으니 sleep 함수를 사용하는 방법을 보겠습니다.

 

sleep 예제

print("Start";)
sleep(1)
print("End";)

 

위 예제를 실행하면 Start 문자가 출력되고 1초 동안 대기를 합니다.

1초가 지나면 End를 출력하게 됩니다.

sleep에 지정한 숫자는 단위 입니다.

대기 시간 설정은 초단위가 아닌 밀리초(1/1000초) 단위로도 설정할 수 있습니다.

print("Start";)
sleep(0.001)
print("End";)

 

Start가 출력이 되고 0.001초 대기한 후에 End를 출력합니다.

sleep에 시간을 지정하는 경우 변수를 사용하여 대기시간을 지정할 수 있습니다.

 

sleep 시간 변수 예제

def stub(i):
print("{}번째 반복".format(i))

max_iter = 5
for i in range(max_iter):
    sleep(i)
    stub(i)

 

sleep 함수에 변수를 지정하였습니다.

for 반복문 안에서 변수 i는 0부터 시작하여 1씩 증가하게 됩니다.

처음에는 0초를 대기 그다음에는 1초를 대기, 마지막으로는 4초를 대기하고 출력을 한 뒤 종료됩니다.

 

정리

파이썬 처리를 대기 시킬 수 있는 함수인 time.sleep 함수를 살펴봤습니다.

sleep 함수에는 int 타입이나 flot 타입으로 시간을 지정할 수 있습니다.

일정 시간 처리를 중지 시켜야 하는 경우에 유용하게 사용할 수 있습니다.

댓글