Python time.sleep(): Thêm độ trễ vào mã của bạn (Ví dụ)

Là gì Python Ngủ?

Python ngủ() là một hàm được sử dụng để trì hoãn việc thực thi mã trong số giây được cung cấp làm đầu vào cho chế độ ngủ(). Lệnh sleep() là một phần của mô-đun thời gian. Bạn có thể sử dụng hàm sleep() để tạm thời dừng việc thực thi mã của mình. Ví dụ: bạn đang chờ quá trình hoàn tất hoặc tải tệp lên.

time.sleep() Cú pháp

import time
time.sleep(seconds)

Thông số Kỹ thuật

giây: Số giây bạn muốn tạm dừng việc thực thi mã của mình.

Ví dụ: Sử dụng hàm sleep() trong Python

Thực hiện theo các bước dưới đây để thêm chế độ ngủ() vào tập lệnh python của bạn.

Bước 1:

import time

Bước 2: Thêm thời gian.sleep()

Số 5 được cung cấp làm đầu vào cho chế độ ngủ (), là số giây bạn muốn quá trình thực thi mã dừng lại khi nó được thực thi.

time.sleep(5)

Đây là mã hoạt động cùng với các thông báo bên trong print(), để hiển thị độ trễ hiển thị thông báo trên thiết bị đầu cuối khi được thực thi.

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

Đầu ra:

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

Làm cách nào để trì hoãn việc thực thi chức năng bằng chế độ ngủ ()?

Ví dụ hiển thị bên dưới có một hàm được xác định gọi là display(). Hàm display() in thông báo “Chào mừng đến với Hướng dẫn của Guru99”. Khi hàm được gọi, nó sẽ thực thi và hiển thị thông báo bên trong terminal.

Để thêm độ trễ cho việc thực thi hàm, chúng ta hãy thêm time.sleep vào Python trước khi thực hiện cuộc gọi đến hàm. Trong quá trình thực hiện, Python time.sleep sẽ dừng ở đó trong khoảng thời gian được chỉ định và sau đó hàm display() sẽ được gọi.

Ví dụ:

import time

print('Code Execution Started')

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

display()
print('Function Execution Delayed')

Đầu ra:

Code Execution Started
Welcome to Guru99 Tutorials
Function Execution Delayed

Những cách khác nhau để thêm độ trễ trong Python Kịch bản?

Sử dụng hàm ngủ()

Chúng ta đã thấy một vài ví dụ trước đây về cách sử dụng time.sleep(). Chúng ta hãy thử một ví dụ khác ở đây bằng cách sử dụng time.sleep().

Ví dụ:

Mã có một vòng lặp for nó sẽ lấy biến chuỗi và in từng ký tự với độ trễ 1 giây.

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

Đầu ra:

G
u
r
u
9
9

Sử dụng hàm asyncio.sleep có sẵn từ (Python 3.4 trở lên)

Bạn có thể sử dụng asyncio.sleep với python phiên bản 3.4 trở lên. Để sử dụng phương thức asyncio sleep, bạn cần thêm async và await vào hàm, như trong ví dụ dưới đây:

Ví dụ:

Tập lệnh có một hàm gọi display() in ra thông báo “Welcome to Guru99 tutorials”. Có hai từ khóa được sử dụng trong hàm async và await. Từ khóa async được thêm vào đầu định nghĩa hàm và await được thêm vào ngay trước asyncio.sleep(). Cả hai từ khóa async / await đều có nghĩa là xử lý tác vụ không đồng bộ.

Khi hàm display() được gọi và gặp await asyncio.sleep(5), mã sẽ ngủ hoặc dừng tại thời điểm đó trong 5 giây và khi hoàn tất, sẽ in ra thông báo.

import asyncio

print('Code Execution Started')

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

asyncio.run(display())

Đầu ra:

Code Execution Started
Welcome to Guru99 Tutorials

Sử dụng Sự kiện().wait

Phương thức Event().wait xuất phát từ mô-đun luồng. Phương thức Event.wait() sẽ tạm dừng việc thực thi bất kỳ quy trình nào trong số giây mà nó lấy làm đối số. Hoạt động của Sự kiện được thể hiện trong ví dụ dưới đây:

Ví dụ:

Mã đang sử dụng Event().wait(5). Số 5 là số giây mà mã sẽ trì hoãn để chuyển sang dòng tiếp theo gọi hàm display(). Sau khi hết 5 giây, hàm display() sẽ được gọi và thông báo sẽ được in bên trong thiết bị đầu cuối.

from threading import Event

print('Code Execution Started')

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


Event().wait(5) 
display()

Đầu ra:

Code Execution Started
Welcome to Guru99 Tutorials

Sử dụng bộ hẹn giờ

Bộ hẹn giờ là một phương thức khác có sẵn với Threading và nó giúp có được chức năng tương tự như Python thời gian ngủ. Hoạt động của Bộ hẹn giờ được thể hiện trong ví dụ dưới đây:

Ví dụ:

Bộ hẹn giờ lấy đầu vào làm thời gian trễ trong Python trong vài giây, cùng với một nhiệm vụ cần được bắt đầu. Để hẹn giờ hoạt động, bạn cần gọi phương thức start(). Trong mã, Bộ hẹn giờ được cung cấp 5 giây và chức năng hiển thị phải được gọi khi hoàn thành 5 giây. Bộ hẹn giờ sẽ bắt đầu hoạt động khi phương thức Time.start() được gọi.

from threading import Timer

print('Code Execution Started')

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

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

Đầu ra:

Code Execution Started
Welcome to Guru99 Tutorials

Tổng kết

  • Python Hàm sleep() sẽ tạm dừng Python mã hoặc trì hoãn việc thực thi chương trình trong số giây được đưa ra làm đầu vào cho chế độ ngủ(). Hàm sleep() là một phần của Python mô-đun thời gian.
  • Bạn có thể tận dụng Python chức năng ngủ khi bạn muốn tạm dừng việc thực thi mã của mình. Ví dụ: trong trường hợp bạn đang đợi một quá trình khác hoàn tất hoặc tải tệp lên, v.v.
  • Có nhiều cách để thêm Python chức năng trì hoãn để mã hóa bên cạnh sleep và họ đang sử dụng asyncio.sleep, Event().wait và Timer.
  • Tương tự như phương thức sleep(), có phương thức asyncio.sleep() với python phiên bản 3.4 trở lên. Để sử dụng phương thức asyncio sleep, bạn cần thêm async và await vào hàm
  • Phương thức Event().wait xuất phát từ mô-đun luồng. Phương thức Event.wait() sẽ tạm dừng việc thực thi bất kỳ quy trình nào trong số giây mà nó lấy làm đối số.
  • Bộ hẹn giờ là một phương pháp khác có sẵn với Threading và nó giúp có được chức năng tương tự như chế độ ngủ