Python sleep()函数完全指南:掌握时间延时与程序暂停技巧

大家好,希望你们在学习Python中进展顺利。在这个教程中,我们将学习Python的时间睡眠(sleep)方法。Python的睡眠函数属于Python时间(time)模块,之前已经讨论过。

Python时间睡眠函数

Python的time sleep函数用于在程序执行过程中增加延迟。我们可以使用python的sleep函数来暂停程序执行一段给定时间(以秒为单位)。注意,python的time sleep函数实际上只停止当前线程的执行,而不是整个程序的执行。

Python 中 time sleep() 函数的语法

python time sleep, python sleep
# 导入时间模块
import time

print("睡眠语句之前")
time.sleep(5)
print("睡眠语句之后")

如果你运行以上代码,你会发现第二个打印语句在5秒钟后执行。因此,你可以根据需要在代码中进行延迟。参数也可以是浮点数,以便获得更精确的延迟。例如,如果你想要延迟100毫秒,即0.1秒,如下所示:

import time
time.sleep(0.100)

Python 睡眠函数示例

让我们来看一个Python time sleep函数的例子。

import time
startTime = time.time()
for i in range(0,5):
   print(i)
   # 延迟1秒
   time.sleep(1)
endTime = time.time()
elapsedTime = endTime - startTime
print("经过时间 = %s" % elapsedTime)

这将会输出:

0
1
2
3
4
经过时间 = 5.059988975524902

由于在for循环中,每次执行都会暂停1秒钟,所以经过的时间大于5秒。额外的时间是由于程序的执行时间、操作系统的线程调度等原因引起的。

Python的sleep()函数有不同的延迟时间选项

有时候你可能需要延迟不同秒数的时间。你可以按照以下方式进行操作:

import time

for i in [ .5, .1, 1, 2]:
   print("等待 %s" % i , end='')
   print(" 秒")
   time.sleep(i)

这将输出:

等待 0.5 秒
等待 0.1 秒
等待 1 秒
等待 2 秒

使用sleep()函数进行戏剧化打印

您可能需要以戏剧化的方式打印一些信息,您可以按以下方式操作:

# 导入时间模块
import time
message = "嗨!!!我正在尝试制造悬念"

for i in message:
   # 打印消息的每个字符
   print(i)
   time.sleep(0.3)

如果你运行上述代码,你会发现在打印每个字符之后,程序会暂停一段时间,这看起来很有戏剧效果。

Python 线程休眠

Python的time sleep()函数对于多线程编程非常重要。以下是一个简单的示例,展示了在多线程编程中,Python的time sleep函数仅会暂停当前线程的执行。

import time
from threading import Thread


class Worker(Thread):
    def run(self):
        for x in range(0, 11):
            print(x)
            time.sleep(1)


class Waiter(Thread):
    def run(self):
        for x in range(100, 103):
            print(x)
            time.sleep(5)


print("启动工作线程")
Worker().start()
print("启动等待线程")
Waiter().start()
print("完成")
python thread sleep, python time sleep multithreading, python sleep example thread
bannerAds