Python time.sleep(): เพิ่มการหน่วงเวลาให้กับโค้ดของคุณ (ตัวอย่าง)

ความหมายของ Python นอน?

Python นอน() เป็นฟังก์ชันที่ใช้เพื่อชะลอการเรียกใช้โค้ดตามจำนวนวินาทีที่กำหนดเป็นอินพุตเข้าสู่โหมดสลีป () คำสั่ง sleep() เป็นส่วนหนึ่งของโมดูลเวลา คุณสามารถใช้ฟังก์ชัน sleep() เพื่อหยุดการทำงานของโค้ดของคุณชั่วคราวได้ ตัวอย่างเช่น คุณกำลังรอให้กระบวนการเสร็จสิ้นหรืออัปโหลดไฟล์

เวลา.sleep() ไวยากรณ์

import time
time.sleep(seconds)

พารามิเตอร์

วินาที: จำนวนวินาทีที่คุณต้องการให้หยุดการทำงานของโค้ด

ตัวอย่าง: การใช้ฟังก์ชัน sleep() ใน Python

ทำตามขั้นตอนด้านล่างเพื่อเพิ่ม sleep() ในสคริปต์ python ของคุณ

ขั้นตอนที่ 1:

import time

ขั้นตอนที่ 2: เพิ่ม time.sleep()

หมายเลข 5 ที่กำหนดเป็นอินพุตของ sleep() คือจำนวนวินาทีที่คุณต้องการให้การเรียกใช้โค้ดหยุดเมื่อมีการดำเนินการ

time.sleep(5)

นี่คือโค้ดการทำงานพร้อมกับข้อความภายใน print() เพื่อแสดงความล่าช้าในการแสดงข้อความบนเทอร์มินัลเมื่อดำเนินการ

import time
print("Welcome to guru99 Python Tutorials")
time.sleep(5)
print("This message will be printed after a wait of 5 seconds")

Output:

Welcome to guru99 Python Tutorials
This message will be printed after a wait of 5 seconds

จะชะลอการทำงานของฟังก์ชั่นโดยใช้ sleep() ได้อย่างไร?

ตัวอย่างที่แสดงด้านล่างนี้มีฟังก์ชันที่เรียกว่า display() ฟังก์ชั่น display() พิมพ์ข้อความ “ยินดีต้อนรับสู่ Guru99 Tutorials” เมื่อเรียกใช้ฟังก์ชัน ฟังก์ชันจะดำเนินการและแสดงข้อความภายในเทอร์มินัล

หากต้องการเพิ่มความล่าช้าในการทำงานของฟังก์ชัน ให้เราเพิ่ม time.sleep in Python ก่อนที่จะทำการเรียกฟังก์ชัน ในระหว่างการประหารชีวิต Python time.sleep จะหยุดตามจำนวนวินาทีที่กำหนด จากนั้นจะมีการเรียกใช้ฟังก์ชัน display() ในภายหลัง

ตัวอย่าง:

import time

print('Code Execution Started')

def display():
    print('Welcome to Guru99 Tutorials')
    time.sleep(5)

display()
print('Function Execution Delayed')

Output:

Code Execution Started
Welcome to Guru99 Tutorials
Function Execution Delayed

มีวิธีใดบ้างในการเพิ่มความล่าช้า Python สคริปต์?

การใช้ฟังก์ชัน sleep()

เราได้เห็นตัวอย่างบางส่วนก่อนหน้านี้เกี่ยวกับวิธีใช้ time.sleep() ให้เราลองตัวอย่างอื่นที่นี่โดยใช้ time.sleep()

ตัวอย่าง:

รหัสมีก สำหรับห่วง ที่จะรับตัวแปรสตริงและพิมพ์อักขระแต่ละตัวโดยมีความล่าช้า 1 วินาที

import time
my_message = "Guru99"
for i in my_message:
   print(i)
   time.sleep(1)

Output:

G
u
r
u
9
9

การใช้ฟังก์ชัน asyncio.sleep ที่มีให้จาก (Python 3.4 หรือสูงกว่า)

คุณสามารถใช้ asyncio.sleep กับ Python เวอร์ชัน 3.4 ขึ้นไปได้ หากต้องการใช้เมธอด asyncio sleep คุณต้องเพิ่ม async และ await ลงในฟังก์ชัน ดังที่แสดงในตัวอย่างด้านล่าง:

ตัวอย่าง:

สคริปต์มีการเรียกใช้ฟังก์ชัน display() ที่จะพิมพ์ข้อความ “ยินดีต้อนรับสู่บทช่วยสอน Guru99” ฟังก์ชัน async และ await มีคำสำคัญสองคำที่ใช้ คำสำคัญ async จะถูกเพิ่มที่จุดเริ่มต้นของคำจำกัดความของฟังก์ชัน และคำสำคัญ await จะถูกเพิ่มก่อน asyncio.sleep() คำสำคัญ async / await ทั้งสองคำมีไว้เพื่อจัดการงานแบบอะซิงโครนัส

เมื่อมีการเรียกใช้ฟังก์ชัน display() และพบ await asyncio.sleep(5) โค้ดจะหยุดทำงานหรือหยุด ณ จุดนั้นเป็นเวลา 5 วินาที และเมื่อเสร็จสิ้นจะพิมพ์ข้อความ

import asyncio

print('Code Execution Started')

async def display():
    await asyncio.sleep(5)
    print('Welcome to Guru99 Tutorials')

asyncio.run(display())

Output:

Code Execution Started
Welcome to Guru99 Tutorials

การใช้เหตุการณ์().รอ

Event().wait วิธีการมาจากโมดูลเธรด วิธีการ Event.wait() จะหยุดการดำเนินการของกระบวนการใด ๆ ตามจำนวนวินาทีที่ใช้เป็นอาร์กิวเมนต์ การทำงานของ Event ดังตัวอย่างด้านล่าง:

ตัวอย่าง:

รหัสกำลังใช้ Event().wait(5) ตัวเลข 5 คือจำนวนวินาทีที่โค้ดจะดีเลย์เพื่อไปยังบรรทัดถัดไปที่เรียกใช้ฟังก์ชัน display() เมื่อครบ 5 วินาทีแล้ว ฟังก์ชัน display() จะถูกเรียก และข้อความจะถูกพิมพ์อยู่ภายในเทอร์มินัล

from threading import Event

print('Code Execution Started')

def display():
    print('Welcome to Guru99 Tutorials')


Event().wait(5) 
display()

Output:

Code Execution Started
Welcome to Guru99 Tutorials

การใช้ตัวจับเวลา

Timer เป็นอีกวิธีหนึ่งที่ใช้ได้กับ Threading และช่วยให้ได้ฟังก์ชันการทำงานเช่นเดียวกับ Python เวลานอน การทำงานของ Timer ดังตัวอย่างด้านล่าง:

ตัวอย่าง:

ตัวจับเวลารับอินพุตเป็นเวลาหน่วงเวลาเข้า Python ในไม่กี่วินาทีพร้อมกับงานที่ต้องเริ่มต้น เพื่อให้ตัวจับเวลาทำงานได้ คุณต้องเรียกใช้เมธอด start() ในโค้ดจะมี Timer กำหนดไว้ 5 วินาที และแสดงฟังก์ชันที่ต้องเรียกเมื่อครบ 5 วินาที ตัวจับเวลาจะเริ่มทำงานเมื่อมีการเรียกใช้เมธอด Timer.start()

from threading import Timer

print('Code Execution Started')

def display():
    print('Welcome to Guru99 Tutorials')

t = Timer(5, display)  
t.start()

Output:

Code Execution Started
Welcome to Guru99 Tutorials

สรุป

  • Python ฟังก์ชั่น sleep() จะหยุดชั่วคราว Python รหัสหรือชะลอการทำงานของโปรแกรมตามจำนวนวินาทีที่กำหนดเป็นอินพุตเข้าสู่โหมดสลีป () ฟังก์ชัน sleep() เป็นส่วนหนึ่งของ Python โมดูลเวลา
  • คุณสามารถใช้ Python ฟังก์ชั่น sleep เมื่อคุณต้องการหยุดการเรียกใช้โค้ดของคุณชั่วคราว ตัวอย่างเช่น ในกรณีที่คุณกำลังรอให้กระบวนการอื่นเสร็จสิ้น หรืออัพโหลดไฟล์ เป็นต้น
  • มีหลายวิธีในการเพิ่ม Python ฟังก์ชันการหน่วงเวลาในการเขียนโค้ดนอกเหนือจากโหมดพักเครื่อง และใช้ asyncio.sleep, Event().wait และ Timer
  • คล้ายกับวิธี sleep() มีวิธี asyncio.sleep() ใน Python เวอร์ชัน 3.4 ขึ้นไป หากต้องการใช้เมธอด asyncio sleep คุณต้องเพิ่ม async และ await ลงในฟังก์ชัน
  • Event().wait วิธีการมาจากโมดูลเธรด วิธีการ Event.wait() จะหยุดการดำเนินการของกระบวนการใด ๆ ตามจำนวนวินาทีที่ใช้เป็นอาร์กิวเมนต์
  • Timer เป็นอีกวิธีหนึ่งที่ใช้ได้กับ Threading และช่วยให้มีฟังก์ชันการทำงานเหมือนกับโหมดสลีป