python
sleep() 함수는 주어진 시간(초) 동안 현재 스레드의 실행을 일시 중단(대기)합니다.
Python에는 시간 관련 작업을 처리하는 데 유용한 여러 기능을 제공하는 time이라는 모듈이 있습니다. 그 중 인기 있는 기능 중 하나는 sleep()
입니다. .
sleep()
함수는 주어진 시간(초) 동안 현재 스레드의 실행을 일시 중지합니다.
import time
print("Printed immediately.")
time.sleep(2.4)
print("Printed after 2.4 seconds.")
이 프로그램의 작동 방식은 다음과 같습니다.
"Printed immediately"
인쇄됩니다"Printed after 2.4 seconds"
인쇄됩니다.
위의 예에서 볼 수 있듯이 sleep()
부동 소수점 숫자를 인수로 사용합니다.
Python 3.5 이전 , 실제 정지 시간은 time()
에 지정된 인수보다 짧을 수 있습니다. 기능.
Python 3.5부터 , 정지 시간은 지정된 초 이상입니다.
<시간>
import time
while True:
localtime = time.localtime()
result = time.strftime("%I:%M:%S %p", localtime)
print(result)
time.sleep(1)
위의 프로그램에서 무한 루프 내에서 현재 현지 시간을 계산하고 인쇄했습니다. 그런 다음 프로그램은 1초 동안 기다립니다. 이번에도 현재 현지 시간이 계산되어 인쇄됩니다. 이 과정은 계속됩니다.
프로그램을 실행하면 다음과 같이 출력됩니다.
02:10:50 PM 02:10:51 PM 02:10:52 PM 02:10:53 PM 02:10:54 PM ... .. ...
다음은 위의 프로그램을 약간 수정한 더 나은 버전입니다.
import time
while True:
localtime = time.localtime()
result = time.strftime("%I:%M:%S %p", localtime)
print(result, end="", flush=True)
print("\r", end="", flush=True)
time.sleep(1)
자세히 알아보려면 Python 셸의 디지털 시계를 방문하세요.
<시간>
sleep()
에 대해 이야기하기 전에 다중 스레드 프로그램에서는 프로세스와 스레드에 대해 이야기해 보겠습니다.
컴퓨터 프로그램은 명령 모음입니다. 프로세스는 해당 명령의 실행입니다.
스레드는 프로세스의 하위 집합입니다. 프로세스는 하나 이상의 스레드를 가질 수 있습니다.
<시간>이 기사에서 위의 모든 프로그램은 단일 스레드 프로그램입니다. 다음은 다중 스레드 Python 프로그램의 예입니다.
import threading
def print_hello_three_times():
for i in range(3):
print("Hello")
def print_hi_three_times():
for i in range(3):
print("Hi")
t1 = threading.Thread(target=print_hello_three_times)
t2 = threading.Thread(target=print_hi_three_times)
t1.start()
t2.start()
프로그램을 실행하면 다음과 같이 출력됩니다.
Hello Hello Hi Hello Hi Hi
위의 프로그램에는 두 개의 스레드 t1이 있습니다. 및 t2 . 이 스레드는 t1.start()
를 사용하여 실행됩니다. 및 t2.start()
진술.
t1 및 t2 동시에 실행하면 다른 결과를 얻을 수 있습니다.
Python의 멀티스레딩에 대해 자세히 알아보려면 이 페이지를 방문하세요.
<시간>
sleep()
함수는 주어진 시간(초) 동안 현재 스레드의 실행을 일시 중단합니다.
단일 스레드 프로그램의 경우 sleep()
스레드 및 프로세스의 실행을 일시 중단합니다. 그러나 이 함수는 다중 스레드 프로그램에서 전체 프로세스가 아닌 스레드를 일시 중단합니다.
import threading
import time
def print_hello():
for i in range(4):
time.sleep(0.5)
print("Hello")
def print_hi():
for i in range(4):
time.sleep(0.7)
print("Hi")
t1 = threading.Thread(target=print_hello)
t2 = threading.Thread(target=print_hi)
t1.start()
t2.start()
위의 프로그램은 2개의 쓰레드를 가지고 있습니다. time.sleep(0.5)
를 사용했습니다. 및 time.sleep(0.75)
이 두 스레드의 실행을 각각 0.5초 및 0.7초 동안 일시 중단합니다.
권장 자료: Python time.sleep() 스레드를 잠자기
python
Python에서 날짜, 시간 및 날짜/시간 클래스는 날짜, 시간 및 시간 간격을 처리하는 여러 기능을 제공합니다. Python의 날짜 및 날짜/시간은 객체이므로 조작할 때 실제로는 문자열이나 타임스탬프가 아니라 객체를 조작하는 것입니다. 날짜나 시간을 조작할 때마다 datetime 함수를 가져와야 합니다. Python의 datetime 클래스는 크게 5가지 클래스로 분류됩니다. date – 날짜만 조작(월, 일, 연도) 시간 – 날짜와 무관한 시간(시, 분, 초, 마이크로초) datetime – 시간과 날짜의 조합(월, 일, 년
놓치신 경우:Python 2는 2020년 1월 1일부로 공식적으로 지원되지 않음 . 아직 Python 2.7을 사용 중이라면 지금 업그레이드하세요. . 실행 중인 버전이 확실하지 않은 경우 Python 버전을 확인하세요. 많은 패키지 유지 관리자가 Python 3으로 마이그레이션했습니다. 일부는 여전히 Python 2를 지원하고 다른 일부는 이미 Python 2 지원을 중단했습니다. Python 2 코드 기반에서 마이그레이션해야 하는 경우 Python 코드를 Python 3으로 마이그레이션하는 방법에 대한 가이드를 읽어보세요.