【Python自學】sleep()函數,常用於倒計時、碼表的函數
Python_sleep()函數
sleep() 是 Python 內建模組 time 下面的函數,用來「讓程式暫停執行」一段時間。
函數全名:time.sleep()
參數:要停止的時間,或者依照他給的函數名稱來說明:要「睡」多久(秒)?
程式在睡覺時不會往下執行下一行,等到他睡醒時(走完你設定的參數),才會繼續往下一行。
基本用法
import time
print("開始")
time.sleep(2) # 暫停 2 秒
print("兩秒後繼續")
輸出結果:
開始 (馬上出現)
(等待兩秒)
兩秒後繼續
常用案例(實務中最常見)
倒數計時器
import
time
for i
in range(5, 0, -1):
print(i)
time.sleep(1)
print("時間到!")
說明:
for i in range(5, 0, -1)
從5開始數到0。-1則是代表是倒著數,每次減1。
做「動畫感」的 loading 效果
import time
print("載入中", end="")
for x
in range(5):
print(".", end="")
time.sleep(0.5)
print("\n載入完成!")
程式呈現效果:
載入中.....(點點點依序出現,每個點0.5秒)
載入完成!(跑完之5次之後出現)
網路爬蟲避免被 Ban(非常常用)
爬蟲需要休息,不然有可能會被伺服器給擋掉。
import
time
for
page in range(1, 6):
print(f"正在爬第
{page} 頁")
time.sleep(1) # 每頁休息 1 秒
其實就是每爬一頁的時候,休息一秒。
實驗數據、測試環境常用
例如測試一個程式跑多久:
import
time
start
= time.time()
time.sleep(3)
end =
time.time()
print("實際等待時間:", end - start)
程式執行結果:
(等到3秒)
實際等待時間: 3.0000832080841064
要記得補:
【注意】sleep函數是真的讓程式停住
在 sleep 期間程式什麼都不能做,如果需要「背景計時」就不能用 sleep → 要用 threading 。
留言
張貼留言