Python time.sleep() 方法



Python time sleep() 方法在特定时间限制内暂停执行。但是,此方法仅停止特定线程的执行;而不是整个程序。

此方法接受的参数可以是浮点数,以指示更精确的睡眠时间。

实际的暂停时间可能小于请求的时间,因为任何捕获的信号都会在执行该信号的捕获例程后终止 sleep()。

语法

以下是 sleep() 方法的语法 -


 time.sleep(t)

参数

  • t − 这是要暂停执行的秒数。

返回值

此方法不返回任何值。它只是在给定的时间内停止程序执行。

以下示例显示了 Python time sleep() 方法的用法。


import time

print("Start:", time.ctime())
time.sleep(5)
print("End:", time.ctime())

当我们运行上述程序时,它会产生以下结果——

Start: Tue Jan 10 09:48:49 2024
End: Tue Jan 10 09:48:54 2024

现在让我们看看这个方法在 for 循环中是如何工作的。

在下面的示例中,我们使用 for 循环打印一系列数字,并使用 sleep() 方法停止每次迭代的执行。


import time

print("Start program")
for x in range (0, 5):
	 	print(x)
	 	time.sleep(2)
	 	print("Program halted for 2 seconds")

print("End Program")

编译并运行后,程序会在每个休眠 2 秒后打印数字 -

Start program
0
Program halted for 2 seconds
1
Program halted for 2 seconds
2
Program halted for 2 seconds
3
Program halted for 2 seconds
4
Program halted for 2 seconds
End Program

此方法还可以将小数值作为参数。演示它的程序如下所示。


import time

print("Start:", time.ctime())
time.sleep(0.5)
print("End:", time.ctime())

如果我们编译并运行给定的程序,则输出显示如下,其中每个 print 语句以 0.5 秒的间隔执行 -

Start: Wed Jan 11 14:20:27 2024
End: Wed Jan 11 14:20:27 2024

我们还尝试将小数值参数传递给带有循环语句的方法,如下例所示 -


import time

print("Start program")
for x in range (0, 5):
	 	print(x)
	 	time.sleep(2)
	 	print("Program halted for 2 seconds")

print("5")
time.sleep(1.5)
print("Program halted for 1.5 seconds")
print("End Program")

执行上述程序时,输出显示如下 -

Start program
0
Program halted for 2 seconds
1
Program halted for 2 seconds
2
Program halted for 2 seconds
3
Program halted for 2 seconds
4
Program halted for 2 seconds
5
Program halted for 1.5 seconds
End Program