Перевод статьи Python Sleep Function Usage от Aqsa Yasin.
Функция sleep()
используется для задержки определённых процессов на указанное время (в секундах). В этой статье мы рассмотрим несколько примеров, которые позволят вам получше познакомиться с методом sleep()
в Python.
Во-первых, чтобы запустить код, нам нужно добавить модуль time
. Функция sleep()
входит в этот модуль и принимает только один параметр – время в секундах, на которое остановится наша программа.
import time time.sleep(sec)
Чтобы понять смысл функции sleep()
, разберём простой пример. Три строки выводятся в определённый промежуток времени – задержку обеспечивает sleep
. Сперва выводится первая строка, затем идёт функция sleep()
, которая задерживает вывод на 2 секунды. Точно так же для следующего print
мы используем sleep
на 5 секунд. Код выглядит следующим образом:
import time print('Hello world') time.sleep(2) print('sleep python function') time.sleep(5) print('sleep function is working') # Вывод Hello world sleep python function sleep function is working Process finished with exit code 0
В тексте этого не видно, но после запуска кода строки выводятся через указанные интервалы времени.
Рассмотрим пример использования sleep()
для создания промежутка времени. Мы используем функцию time()
, чтобы узнать текущее время, и localtime()
, чтобы получить текущие дату и время в конкретной местности. Кроме того, есть функция strftime()
(«string from time»), которая возвращает время в виде строки в указанном формате.
import time current = time.localtime(time.time()) print(time.strftime('Start time is: %H:%M:%S', current)) print('2 seconds wait') time.sleep(2) current = time.localtime(time.time()) print(time.strftime('Ending time is: %H:%M:%S', current)) # Вывод Start time is: 14:54:35 2 seconds wait Ending time is: 14:54:37 Process finished with exit code 0
В результате интервал между двумя моментами времени составил две секунды.
В этом скрипте мы создадим 7 временных отметок и добавим задержку на 2 секунды между каждыми двумя отметками. Первый шаг такой же, как прежде.
От предыдущего этот пример отличается тем, что мы создали временные отметки несколько раз с помощью цикла for
. Цикл отработает 7 итераций. Опять же, мы использовали strftime()
, чтобы получить время в виде строки, а sleep()
— чтобы обеспечить задержку в 2 секунды между каждыми двумя отметками.
import time for i in range(7): currenttime = time.localtime() timestamp = time.strftime('%H:%M:%S', currenttime) time.sleep(2) print(timestamp) # Вывод 15:00:32 15:00:34 15:00:36 15:00:38 15:00:40 15:00:42 15:00:44 Process finished with exit code 0
Мы получили 7 временных отметок через каждые 2 секунды.
Применить функцию sleep()
со строкой вам может понадобиться, если захотите вывести каждый символ строки с определённой задержкой. Реализовать это очень просто. Рассмотрим эту задачу в коде ниже.
В качестве строки возьмём слово. Переберем это слово в цикле for
, а на каждой итерации поставим задержку в 4 секунды.
import time string = 'Pythonist' for i in string: print(i) time.sleep(2) # Вывод P y t h o n i s t Process finished with exit code 0
В этой статье мы рассмотрели применение функции sleep()
в различных ситуациях. Она помогает при решении различных задач, связанных со временем. Теперь вы можете добавлять задержки в свою программу, например, чтобы предотвратить неправильное использование системных ресурсов.
Python предлагает набор библиотек, удовлетворяющих различные потребности в визуализации, будь то академические исследования, бизнес-аналитика или…
В Python для представления данных в двоичной форме можно использовать байты. Из этой статьи вы…
В этой статье рассказывается о том, что такое Werkzeug и как Flask использует его для…
При работе с датами часто возникает необходимость прибавлять к дате или вычитать из нее различные…
В этом руководстве мы рассмотрим, как добавить социальную аутентификацию с помощью GitHub и Google в…
В этой статье мы рассмотрим, что такое подсказки типов и чем они могут быть полезны.…