Python 睡眠()
Python 睡眠()
sleep() 函数暂停(等待)当前线程的执行给定的秒数。
Python 有一个名为 time 的模块,它提供了几个有用的函数来处理与时间相关的任务。其中一个流行的函数是 sleep()
.
sleep()
函数将当前线程的执行暂停给定的秒数。
示例 1:Python sleep()
import time
print("Printed immediately.")
time.sleep(2.4)
print("Printed after 2.4 seconds.")
下面是这个程序的工作原理:
"Printed immediately"
打印出来的- 暂停(延迟)执行 2.4 秒。
"Printed after 2.4 seconds"
已打印。
从上面的例子可以看出,sleep()
接受一个浮点数作为参数。
在 Python 3.5 之前 ,实际挂起时间可能小于time()
指定的参数 功能。
自 Python 3.5 起 ,暂停时间将至少为指定的秒数。
示例 2:Python 创建数字时钟
import time
while True:
localtime = time.localtime()
result = time.strftime("%I:%M:%S %p", localtime)
print(result)
time.sleep(1)
在上面的程序中,我们在无限 while 循环中计算并打印了当前本地时间。然后,程序等待 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 shell 中的数字时钟。
Python 中的多线程
在谈sleep()
之前 在多线程程序中,我们来谈谈进程和线程。
计算机程序是指令的集合。一个进程就是那些指令的执行。
线程是进程的子集。一个进程可以有一个或多个线程。
示例 3:Python 多线程
本文以上所有程序都是单线程程序。这是一个多线程 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 中的多线程的更多信息。
多线程程序中的time.sleep()
sleep()
函数将当前线程的执行暂停给定的秒数。
如果是单线程程序,sleep()
暂停线程和进程的执行。但是,在多线程程序中,该函数会挂起一个线程而不是整个进程。
示例 4:多线程程序中的 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()
上面的程序有两个线程。我们使用了 time.sleep(0.5)
和 time.sleep(0.75)
分别暂停这两个线程的执行0.5秒和0.7秒。
推荐阅读: Python time.sleep() 休眠线程
Python