본문 바로가기
초보자를 위한 Python/5. Python 함수

5.13 파이썬 time.sleep() : 코드 진행의 지연 (예제)

by 엔터티 2022. 11. 2.
반응형

파이썬에서 sleep 이란 무엇인가?

Python sleep() 은 sleep()에 대한 입력으로 주어진 시간() 동안 코드 실행을 지연하는 데 사용되는 함수입니다. 

sleep() 명령은 시간 모듈의 일부입니다. 

sleep() 함수를 사용하여 코드 실행을 일시적으로 중지할 수 있습니다. 

예를 들어 프로세스가 완료되거나 파일 업로드가 완료되기를 기다리고 있습니다.

 

목차

    time.sleep() 구문

    import time
    time.sleep(초)

    매개변수

    초 : 코드 실행을 중단할 시간(초)입니다.

    Python에서 sleep() 함수 사용 예

    Python 스크립트에 sleep()을 추가하려면 아래 단계를 따르세요.

    1단계 :

    import time

    2단계 : time.sleep() 추가

    sleep()에 대한 입력으로 주어진 숫자 5는 코드 실행이 실행될 때 중지하려는 시간(초)입니다.

    time.sleep(5)

    다음은 실행 시 터미널에 메시지 표시 지연을 표시하기 위해 print() 내부의 메시지와 함께 작동하는 코드입니다.

    import time
    print("Welcome to Entity01 Python Tutorials")
    time.sleep(5)
    print("이 메시지는 5초 후에 출력됩니다.")

    출력:

    Welcome to Entity01 Python Tutorials
    이 메시지는 5초 후에 출력됩니다.

     

    sleep()을 사용하여 함수 실행을 지연시키는 방법

    아래에 표시된 예에는 display()라는 함수가 정의되어 있습니다. display() 함수는 "Welcome to Entity01 Tutorials" 메시지를 출력합니다. 함수가 호출되면 터미널 내부에 메시지를 표시하고 실행합니다.

    함수 실행에 지연을 추가하려면 함수를 호출하기 전에 Python에서 time.sleep을 추가합니다. 실행하는 동안 time.sleep은 주어진 시간(초) 동안 거기서 멈추고 나중에 display() 함수가 호출됩니다.

     

    예시:

    import time
    
    print('코드 실행이 시작됨')
    
    def display():
        print('Welcome to Entity01 Tutorials')
        time.sleep(5)
    
    display()
    print('함수 실행 지연')

    출력

    코드 실행이 시작됨
    Welcome to Entity01 Tutorials
    함수 실행 지연

    Python 스크립트를 지연시키는 다른 방법

    sleep() 함수 사용

    time.sleep()을 사용하는 방법에 대한 몇 가지 예를 이전에 보았습니다. time.sleep()을 사용하여 여기에서 다른 예를 시도해 보겠습니다.

    예시 : 

    import time
    my_message = "Entity01"
    for i in my_message:
       print(i)
       time.sleep(1)

    출력

    E
    n
    t
    i
    t
    y
    0
    1

    Python 3.4 이상에서 사용 가능한 asyncio.sleep 기능 사용

    python 버전 3.4 이상에서 asyncio.sleep을 사용할 수 있습니다. asyncio sleep 메서드를 사용하려면 아래 예제와 같이 함수에 async 및 await를 추가해야 합니다.

    예시:

    스크립트에는 "Welcome to Entity01 tutorials"라는 메시지를 출력하는 display() 함수 호출이 있습니다. async 및 await 함수에는 두 개의 키워드가 사용됩니다. async 키워드는 함수 정의 시작 부분에 추가되고 await는 asyncio.sleep() 직전에 추가됩니다. async / await 키워드는 모두 비동기 작업을 처리하기 위한 것입니다.

    display() 함수가 호출되고 await asyncio.sleep(5)를 만나면 코드는 해당 지점에서 5초 동안 잠자기 또는 정지하고 완료되면 메시지를 인쇄합니다.

    import asyncio
    
    print('코드 실행이 시작됨')
    
    async def display():
        await asyncio.sleep(5)
        print('Welcome to Entity01 Tutorials')
    
    asyncio.run(display())

    출력

    코드 실행이 시작됨
    Welcome to Entity01 Tutorials

    Event().wait 사용

    Event().wait 메서드는 스레딩 모듈에서 가져옵니다. Event.wait() 메서드는 인수로 걸리는 시간(초) 동안 모든 프로세스의 실행을 중지합니다. Event의 작동은 아래 예와 같습니다.

    예시 : 

    아래의 코드는 Event().wait(5)를 사용하고 있습니다. 숫자 5는 display() 함수를 호출하는 다음 줄로 이동하기 위해 코드가 지연되는 시간(초)입니다. 5초가 끝나면 display() 함수가 호출되고 메시지가 터미널 내부에 인쇄됩니다.

    from threading import Event
    
    print('코드 실행이 시작됨')
    
    def display():
        print('Welcome to Entity01 Tutorials')
    
    
    Event().wait(5) 
    display()

    출력

    코드 실행이 시작됨
    Welcome to Entity01 Tutorials

    타이머(Timer) 사용

    Timer는 Threading과 함께 사용할 수 있는 또 다른 방법이며 Python 시간 절전과 동일한 기능을 얻는 데 도움이 됩니다. 타이머의 작동은 아래 예와 같습니다.

    예시 : 

    Timer는 시작해야 하는 작업과 함께 Python의 지연 시간(초)으로 입력을 받습니다. 

    타이머를 작동시키려면 start() 메서드를 호출해야 합니다. 코드에서 Timer는 5초가 주어지고 5초가 되었을 때 호출되어야 하는 함수가 표시됩니다. 

    Timer.start() 메서드가 호출되면 타이머가 작동하기 시작합니다.

    from threading import Timer
    
    print('코드 실행이 시작됨')
    
    def display():
        print('Welcome to Entity01 Tutorials')
    
    t = Timer(5, display)  
    t.start()

    출력:

    코드 실행이 시작됨
    Welcome to Entity01 Tutorials

     

    요약 : 

    • 파이썬의 sleep() 함수는 파이썬 코드를 일시 중지하거나 sleep()에 대한 입력으로 지정된 시간(초) 동안 프로그램 실행을 지연합니다. sleep() 함수는 Python 시간 모듈의 일부입니다.
    • 코드 실행을 일시적으로 중단하려는 경우 Python 절전 기능을 사용할 수 있습니다. 예를 들어 다른 프로세스가 완료되거나 파일 업로드 등을 기다리는 경우입니다.
    • sleep 외에도 Python 지연 기능을 코드에 추가하는 방법은 여러 가지가 있으며, asyncio.sleep , Event().wait 및 Timer를 사용하고 있습니다.
    • sleep() 메서드와 유사하게 python 버전 3.4 이상에는 asyncio.sleep() 메서드가 있습니다. asyncio sleep 메서드를 사용하려면 async를 추가하고 함수에 await를 추가해야 합니다.
    • Event().wait 메서드는 스레딩 모듈에서 가져옵니다. Event.wait() 메서드는 인수로 걸리는 시간(초) 동안 모든 프로세스의 실행을 중지합니다.
    • 타이머는 스레딩에서 사용할 수 있는 또 다른 방법이며 절전 모드와 동일한 기능을 얻는 데 도움이 됩니다.

     

     

     

    파이썬 time.sleep()

     

    반응형

    댓글