Header ads

Header ads
» » Hàm sleep() trong Python

Module time trong Python cung cấp một số hàm rất hữu ích để xử lý các tác vụ liên quan đến thời gian. Một trong những hàm phổ biến được dùng nhiều nhất là sleep().

Hàm sleep() trong Python sử dụng để dừng thực thi luồng hiện tại trong số giây truyền vào.

Ví dụ 1: Sử dụng sleep()

import time       print ("In kết quả ra màn hình ngay lập tức.")   time.sleep(3)   print ("In kết quả ra màn hình sau 3s.")

Phương thức này không trả về bất cứ giá trị nào mà chỉ delay trình thực thi, hoạt động như này: 

    Ví dụ 2: Tạo đồng hồ điện tử trong Python

    import time   while True:     localtime = time.localtime()     result = time.strftime("%I:%M:%S %p", localtime)     print(result)     time.sleep(1)

    Ở chương trình trên, Quantrimang đã tạo và in ra thời gian cục bộ bên trong một vòng lặp while vô hạn. Sau khi in ra kết quả, trình thực thi sẽ delay trong vòng 1 giây rồi tiếp tục in ra thời gian hiện tại. Quá trình này diễn ra liên tục nhờ vòng lặp while, tạo thành một đồng hồ điện tử trong Python.

    11:58:31 AM   11:58:32 AM   11:58:33 AM   11:58:34 AM   11:58:35 AM   11:58:36 AM   11:58:37 AM   11:58:38 AM   ... .. ...

    Hoặc một cách khác làm đồng hồ điện tử:

    import time   while True:     localtime = time.localtime()     result = time.strftime("%I:%M:%S %p", localtime)     print(result, end="", flush=True)     print("\n", end="", flush=True)     time.sleep(1)

    Đa luồng trong Python

    Trước khi nói về sleep() trong các chương trình đa luồng, ta hãy đề cập một chút đến ProcessThread.

    • Process là quá trình hoạt động của một chương trình.
    • Thread là một bước điều hành bên trong một process. Một process có thể chứa nhiều thread bên trong nó. 

    Ví dụ 3: Đa luồng Python

    import threading         def print_hello_three_times():     for i in range(3):       print("Hello")        def print_hi_three_times():        for i in range(3):          print("Hi")       t1 = threading.Thread(target=print_hello_three_times)     t2 = threading.Thread(target=print_hi_three_times)        t1.start()   t2.start()

    Chạy chương trình, kết quả output ra màn hình sẽ có dạng:

    Hello   Hello   Hi   Hello   Hi   Hi

    Chương trình trên có hai luồng t1t2. Các luồng này được chạy bằng cách sử dụng các câu lệnh t1.start() và t2.start().

    Lưu ý rằng, t1 và t2 chạy đồng thời và bạn có thể nhận được output khác nhau.

    time.sleep() trong các chương trình đa luồng

    Hàm sleep() tạm dừng thực thi luồng hiện tại trong một số giây nhất định.

    Trong trường hợp các chương trình đơn luồng, sleep() tạm dừng thực thi luồng và xử lý. Tuy nhiên, trong các chương trình đa luồng, hàm này chỉ tạm dừng một luồng thay vì toàn bộ quá trình đa luồng.

    Ví dụ 4: sleep() trong chương trình đa luồng

    import threading    import time        def print_hello():     for i in range(4):       time.sleep(0.5)       print("Hello")        def print_hi():        for i in range(4):          time.sleep(0.7)         print("Hi")       t1 = threading.Thread(target=print_hello)     t2 = threading.Thread(target=print_hi)     t1.start()   t2.start()   

    Kết quả có dạng:

    Hello   Hi   Hello   Hi   Hello   Hello   Hi   Hi

    Chương trình trên có hai thread. Ở đây ta đã sử dụng time.sleep(0.5)time.sleep(0.75) để tạm dừng thực hiện hai luồng này trong 0.5 giây và 0.7 giây tương ứng.

    Bài trước: Module time trong Python


    Khóa đào tạo Power BI phân tích báo cáo để bán hàng thành công

    Khóa học Lập trình Visual Foxpro 9 - Dành cho nhà quản lý và kế toán

    Khóa học hướng dẫn về Moodle chuyên nghiệp và hay
    Xây dựng hệ thống đào tạo trực tuyến chuyên nghiệp tốt nhất hiện nay.


    Khóa học AutoIt dành cho dân IT và Marketing chuyên nghiệp

    Khóa học hướng dẫn sử dụng Powerpoint từ đơn giản đến phức tạp HIỆU QUẢ
    Khóa học Thiết kế, quản lý dữ liệu dự án chuyên nghiệp cho doanh nghiệp bằng Bizagi
     Khoa hoc hay
    Khóa học Phân tích dữ liệu sử dụng Power Query trong Excel
    Khóa học Phân tích dữ liệu sử dụng TableAU - Chìa khóa thành công!
    Nhấn vào đây để bắt đầu khóa học

    Khóa học "Thiết kế bài giảng điện tử", Video, hoạt hình 
    kiếm tiền Youtube bằng phần mềm Camtasia Studio
    Khóa học HƯỚNG DẪN THIẾT KẾ VIDEO CLIP CHO DÂN MARKETING CHUYÊN NGHIỆP
     Xây dựng website​​​​
    HƯỚNG DẪN THIẾT KẾ QUẢNG CÁO VÀ ĐỒ HỌA CHUYÊN NGHIỆP VỚI CANVA
    Hãy tham gia khóa học để trở thành người chuyên nghiệp. Tuyệt HAY!😲👍
     Khoa hoc hay
    MICROSOFT ACCESS



    GOOGLE SPREADSHEETS phê không tưởng
     Khoa hoc hay
    Khóa hoc lập trình bằng Python tại đây

    Hacker mũ trắng




    Hãy tham gia khóa học để biết mọi thứ

    Để tham gia tất cả các bài học, Bạn nhấn vào đây 
    Khóa học sử dụng Adobe Presenter-Tạo bài giảng điện tử
     Khoa hoc hay

    Khóa học sử dụng Edmodo để dạy và học hiện đại để thành công


    Cập nhật công nghệ từ Youtube tại link: http://congnghe.hocviendaotao.com
    Tham gia nhóm Facebook
    Để tham gia khóa học công nghệ truy cập link: http://thuvien.hocviendaotao.com
    Mọi hỗ trợ về công nghệ email: dinhanhtuan68@gmail.com

    About Học viện đào tạo trực tuyến

    Xinh chào bạn. Tôi là Đinh Anh Tuấn - Thạc sĩ CNTT. Email: dinhanhtuan68@gmail.com .
    - Nhận đào tạo trực tuyến lập trình dành cho nhà quản lý, kế toán bằng Foxpro, Access 2010, Excel, Macro Excel, Macro Word, chứng chỉ MOS cao cấp, IC3, tiếng anh, phần mềm, phần cứng .
    - Nhận thiết kế phần mềm quản lý, Web, Web ứng dụng, quản lý, bán hàng,... Nhận Thiết kế bài giảng điện tử, số hóa tài liệu...
    HỌC VIỆN ĐÀO TẠO TRỰC TUYẾN:TẬN TÂM-CHẤT LƯỢNG.
    «
    Next
    Bài đăng Mới hơn
    »
    Previous
    Bài đăng Cũ hơn