- Использование функции sleep() в Python
- Синтаксис
- Простой пример функции sleep()
- Функции sleep() и time()
- Цифровые часы с помощью sleep() и timestamp()
- Использование sleep() со строкой
- Заключение
- Функция time sleep() в Python
- Синтаксис
- Пример
- Различное время задержки сна
- Эффектная печать с использованием sleep()
- Метод при многопоточности
- Функция time sleep() в Python
- Синтаксис
- Пример
- Различное время задержки сна
- Эффектная печать с использованием sleep()
- Метод при многопоточности
Использование функции sleep() в Python
Функция sleep() используется для задержки определённых процессов на указанное время (в секундах). В этой статье мы рассмотрим несколько примеров, которые позволят вам получше познакомиться с методом sleep() в Python.
Синтаксис
Во-первых, чтобы запустить код, нам нужно добавить модуль time . Функция sleep() входит в этот модуль и принимает только один параметр – время в секундах, на которое остановится наша программа.
Простой пример функции sleep()
Чтобы понять смысл функции 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()
Рассмотрим пример использования 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
В результате интервал между двумя моментами времени составил две секунды.
Цифровые часы с помощью sleep() и timestamp()
В этом скрипте мы создадим 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() со строкой
Применить функцию 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() в различных ситуациях. Она помогает при решении различных задач, связанных со временем. Теперь вы можете добавлять задержки в свою программу, например, чтобы предотвратить неправильное использование системных ресурсов.
Функция time sleep() в Python
В этом уроке мы узнаем о методе time sleep() в python. Функция используется для добавления задержки в выполнении программы. Мы можем использовать функцию sleep(), чтобы остановить выполнение программы на заданное время в секундах. Обратите внимание, что функция ожидания времени фактически останавливает выполнение только текущего потока, а не всей программы.
Синтаксис
sleep() – это метод модуля времени в Python. Итак, сначала мы должны импортировать модуль времени, затем мы можем использовать этот метод. Способ использования функции sleep():
Здесь аргумент метода sleep() t находится в секундах. Это означает, что когда выполняется инструкция time.sleep(t), следующая строка кода будет выполнена через t секунд. Смотрите следующий пример:
# importing time module import time print("Before the sleep statement") time.sleep(5) print("After the sleep statement")
Если вы запустите приведенный выше код, вы увидите, что вторая печать выполняется через 5 секунд. Таким образом, вы можете отложить свой код по мере необходимости.
Аргумент может иметь плавающее значение для более точной задержки. Например, вы хотите сделать задержку на 100 миллисекунд, что составляет 0,1 секунды, как показано ниже:
import time time.sleep(0.100)
Пример
Давайте посмотрим на следующий пример функции sleep в Python.
import time startTime = time.time() for i in range(0,5): print(i) # making delay for 1 second time.sleep(1) endTime = time.time() elapsedTime = endTime - startTime print("Elapsed Time = %s" % elapsedTime)
0 1 2 3 4 Elapsed Time = 5.059988975524902
Прошедшее время больше 5, потому что каждый раз в цикле for выполнение останавливается на 1 секунду. Дополнительное время связано со временем выполнения программы, планированием потоков операционной системы и т.д.
Различное время задержки сна
Иногда может потребоваться задержка на разные секунды. Сделать это можно следующим образом:
import time for i in [ .5, .1, 1, 2]: print("Waiting for %s" % i , end='') print(" seconds") time.sleep(i)
Waiting for 0.5 seconds Waiting for 0.1 seconds Waiting for 1 seconds Waiting for 2 seconds
Эффектная печать с использованием sleep()
Возможно, вам придется напечатать какое-нибудь сообщение необычным образом, вы можете сделать это так:
# importing time module import time message = "Hi. I am trying to create suspense" for i in message: # printing each character of the message print(i) time.sleep(0.3)
Если вы запустите приведенный выше код, вы увидите, что после печати каждого символа сообщения требуется некоторое время, что кажется эффектным.
Метод при многопоточности
Функция time sleep() – очень важный метод для многопоточности. Ниже приведен простой пример, показывающий, что функция ожидания времени останавливает выполнение текущего потока только при многопоточном программировании.
import time from threading import Thread class Worker(Thread): def run(self): for x in range(0, 11): print(x) time.sleep(1) class Waiter(Thread): def run(self): for x in range(100, 103): print(x) time.sleep(5) print("Staring Worker Thread") Worker().start() print("Starting Waiter Thread") Waiter().start() print("Done")
На изображении ниже показан результат, полученный в приведенном выше примере.
Функция time sleep() в Python
В этом уроке мы узнаем о методе time sleep() в python. Функция используется для добавления задержки в выполнении программы. Мы можем использовать функцию sleep(), чтобы остановить выполнение программы на заданное время в секундах. Обратите внимание, что функция ожидания времени фактически останавливает выполнение только текущего потока, а не всей программы.
Синтаксис
sleep() – это метод модуля времени в Python. Итак, сначала мы должны импортировать модуль времени, затем мы можем использовать этот метод. Способ использования функции sleep():
Здесь аргумент метода sleep() t находится в секундах. Это означает, что когда выполняется инструкция time.sleep(t), следующая строка кода будет выполнена через t секунд. Смотрите следующий пример:
# importing time module import time print("Before the sleep statement") time.sleep(5) print("After the sleep statement")
Если вы запустите приведенный выше код, вы увидите, что вторая печать выполняется через 5 секунд. Таким образом, вы можете отложить свой код по мере необходимости.
Аргумент может иметь плавающее значение для более точной задержки. Например, вы хотите сделать задержку на 100 миллисекунд, что составляет 0,1 секунды, как показано ниже:
import time time.sleep(0.100)
Пример
Давайте посмотрим на следующий пример функции sleep в Python.
import time startTime = time.time() for i in range(0,5): print(i) # making delay for 1 second time.sleep(1) endTime = time.time() elapsedTime = endTime - startTime print("Elapsed Time = %s" % elapsedTime)
0 1 2 3 4 Elapsed Time = 5.059988975524902
Прошедшее время больше 5, потому что каждый раз в цикле for выполнение останавливается на 1 секунду. Дополнительное время связано со временем выполнения программы, планированием потоков операционной системы и т.д.
Различное время задержки сна
Иногда может потребоваться задержка на разные секунды. Сделать это можно следующим образом:
import time for i in [ .5, .1, 1, 2]: print("Waiting for %s" % i , end='') print(" seconds") time.sleep(i)
Waiting for 0.5 seconds Waiting for 0.1 seconds Waiting for 1 seconds Waiting for 2 seconds
Эффектная печать с использованием sleep()
Возможно, вам придется напечатать какое-нибудь сообщение необычным образом, вы можете сделать это так:
# importing time module import time message = "Hi. I am trying to create suspense" for i in message: # printing each character of the message print(i) time.sleep(0.3)
Если вы запустите приведенный выше код, вы увидите, что после печати каждого символа сообщения требуется некоторое время, что кажется эффектным.
Метод при многопоточности
Функция time sleep() – очень важный метод для многопоточности. Ниже приведен простой пример, показывающий, что функция ожидания времени останавливает выполнение текущего потока только при многопоточном программировании.
import time from threading import Thread class Worker(Thread): def run(self): for x in range(0, 11): print(x) time.sleep(1) class Waiter(Thread): def run(self): for x in range(100, 103): print(x) time.sleep(5) print("Staring Worker Thread") Worker().start() print("Starting Waiter Thread") Waiter().start() print("Done")
На изображении ниже показан результат, полученный в приведенном выше примере.