Функция Python sleep () (с примерами)

Функция sleep () приостанавливает (ожидает) выполнение текущего потока на заданное количество секунд.

В Python есть модуль с именем time, который предоставляет несколько полезных функций для обработки задач, связанных со временем. Среди них одна из популярных функций sleep().

В sleep()Function приостанавливает выполнение текущего потока для заданного количества секунд.

Пример 1: Python sleep ()

  import time print("Printed immediately.") time.sleep(2.4) print("Printed after 2.4 seconds.") 

Вот как работает эта программа:

  • "Printed immediately" напечатан
  • Приостанавливает (задерживает) выполнение на 2,4 секунды.
  • "Printed after 2.4 seconds" печатается.

Как видно из приведенного выше примера, sleep()в качестве аргумента используется число с плавающей запятой.

До Python 3.5 фактическое время приостановки могло быть меньше, чем аргумент, указанный для time()функции.

Начиная с Python 3.5 , время приостановки будет не менее указанного в секундах.

Пример 2: Python создает цифровые часы

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

В приведенной выше программе мы вычислили и распечатали текущее местное время внутри бесконечного цикла while. Затем программа ждет 1 секунду. Опять же, текущее местное время вычисляется и печатается. Этот процесс продолжается.

Когда вы запустите программу, результат будет примерно таким:

 14:10:50 14:10:51 14:10:52 14:10:53 14:10:54… 

Вот немного измененная улучшенная версия вышеуказанной программы.

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

Чтобы узнать больше, посетите цифровые часы в оболочке Python.

Многопоточность в Python

Прежде чем говорить о sleep()многопоточных программах, давайте поговорим о процессах и потоках.

Компьютерная программа - это набор инструкций. Процесс - это выполнение этих инструкций.

Поток - это часть процесса. У процесса может быть один или несколько потоков.

Пример 3: многопоточность Python

Все программы, указанные выше в этой статье, являются однопоточными. Вот пример многопоточной программы на 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() 

Когда вы запустите программу, результат будет примерно таким:

 Привет привет привет привет привет 

Вышеупомянутая программа имеет два потока t1 и t2. Эти потоки выполняются с использованием t1.start()и t2.start()заявления.

Обратите внимание, что t1 и t2 выполняются одновременно, и вы можете получить разные результаты.

Посетите эту страницу, чтобы узнать больше о многопоточности в Python.

time.sleep () в многопоточных программах

В sleep()Function приостанавливает выполнение текущего потока для заданного количества секунд.

В случае однопоточных программ sleep()приостанавливает выполнение потока и процесса. Однако в многопоточных программах функция приостанавливает поток, а не весь процесс.

Пример 4: sleep () в многопоточной программе

 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()

Вышеупомянутая программа имеет два потока. Мы использовали time.sleep(0.5)и, time.sleep(0.75)чтобы приостановить выполнение этих двух потоков на 0,5 секунды и 0,7 секунды соответственно.

Рекомендуемая литература: Python time.sleep () спит поток

Интересные статьи...