пауза в выполнении кода python

Правильный способ приостановить программу Python

Я использую функцию ввода как способ приостановить мои скрипты

есть ли формальный способ сделать это?

10 ответов

кажется мне прекрасным (или raw_input() в Python 2.Икс.) В качестве альтернативы вы можете использовать time.sleep() Если вы хотите сделать паузу на определенное количество секунд.

Я предполагаю, что вы хотите сделать паузу без ввода

Итак, я обнаружил, что это очень хорошо работает в моих начинаниях кодирования. Я просто создана функция в самом начале моей программы,

теперь очевидно, что эта программа не имеет цели и просто для примера целей, но вы можете понять, что именно я означать.

примечание: для Python 3 вам нужно будет использовать input В противоположность raw_input

Я использую следующее Для python 2 и 3, чтобы приостановить выполнение кода, пока пользователь не нажмет ENTER

у меня был аналогичный вопрос, и я использовал сигнал:

, который отправит сигнал 2 (т. е. SIGINT) в вашу программу python. Ваша программа вызовет зарегистрированный обработчик и продолжит работу.

Как указал mhawke и stevehaкомментарии, лучший ответ на этот точный вопрос будет:

для длинного блока текста лучше всего использовать input(‘Press to continue’) (или raw_input(‘Press to continue’) на Python 2.x) запрашивать пользователя, а не время задержки. Быстрые читатели не хочу ждать задержки, медленные читатели могут захотеть больше времени задержка, кто-то может быть прерван во время чтения и хочет намного больше времени и т. д. Кроме того, если кто-то использует программу много, он/она возможно, привыкли, как это работает и не нужно даже читать долго текст. Это просто дружелюбнее, чтобы позволить пользователю контролировать, как долго блок текст отображается для чтения.

Источник

45) время сна Python ()

Что такое Python Sleep?

Функция сна () Python будет задерживать выполнение кода на количество секунд, заданных в качестве входных данных для сна (). Команда sleep () является частью временного модуля. Вы можете использовать функцию sleep (), если хотите временно остановить выполнение вашего кода. Например, если вы ожидаете завершения процесса или загрузки файла и т. Д.

В этом уроке вы узнаете:

Синтаксис

Параметры:

секунды : количество секунд, которое вы хотите, чтобы выполнение вашего кода было остановлено.

Пример: использование функции sleep () в Python

Следуйте инструкциям ниже, чтобы добавить sleep () в ваш скрипт на python.

Шаг 1:

Шаг 2: Добавьте time.sleep ()

Число 5, заданное как input для sleep (), — это количество секунд, в течение которого вы хотите, чтобы выполнение кода было остановлено при его выполнении.

Вот рабочий код вместе с сообщениями внутри print (), чтобы показать задержку отображения сообщения на терминале при выполнении.

Вывод:

Как отложить выполнение функции с помощью sleep ()?

Пример, показанный ниже, имеет функцию, называемую display (). Функция display () выводит сообщение «Welcome to Guru99 Tutorials». Когда функция вызывается, она запускается и отображает сообщение внутри терминала.

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

Пример:

Вывод:

Как можно добавить задержку в скрипте Python?

Использование функции sleep ()

Ранее мы видели несколько примеров использования time.sleep (). Давайте попробуем другой пример, используя time.sleep ().

Пример:

В коде есть цикл for, который будет принимать строковую переменную и печатать каждый символ с задержкой в ​​1 секунду.

Вывод:

Использование функции asyncio.sleep доступно из (Python 3.4 или выше)

Вы можете использовать asyncio.sleep с Python версии 3.4 и выше. Чтобы использовать метод сна asyncio, вам нужно добавить async и await в функцию, как показано в примере ниже:

В скрипте есть вызов функции display (), который выводит сообщение «Добро пожаловать в Guru99». В функции async и await используются два ключевых слова. Ключевое слово async добавляется в начале определения функции, а ожидание добавляется непосредственно перед asyncio.sleep (). Оба ключевых слова async / await предназначены для выполнения асинхронной задачи.

Когда вызывается функция display (), и она встречает await asyncio.sleep (5), код остановится или остановится в этой точке на 5 секунд и, как только будет выполнено, напечатает сообщение.

Использование Event (). Wait

Метод Event (). Wait происходит из модуля потоков. Метод Event.wait () остановит выполнение любого процесса на количество секунд, которое он принимает в качестве аргумента. Работа Event показана в примере ниже:

Код использует Event (). Wait (5). Число 5 — это количество секунд, в течение которых код будет задерживаться для перехода к следующей строке, которая вызывает функцию display (). По истечении 5 секунд будет вызвана функция display (), и сообщение будет напечатано внутри терминала.

Вывод:

Использование таймера

Таймер — это еще один метод, доступный в Threading, который помогает получить те же функции, что и в спящем режиме. Работа таймера показана в примере ниже:

Источник

Correct way to pause a Python program

I’ve been using the input function as a way to pause my scripts:

Is there a formal way to do this?

пауза в выполнении кода python

16 Answers 16

It Seems fine to me (or raw_input() in Python 2.X). Alternatively, you could use time.sleep() if you want to pause for a certain number of seconds.

пауза в выполнении кода python

For Windows only, use:

пауза в выполнении кода python

So, I found this to work very well in my coding endeavors. I simply created a function at the very beginning of my program,

and now I can use the pause() function whenever I need to just as if I was writing a batch file. For example, in a program such as this:

Now obviously this program has no objective and is just for example purposes, but you can understand precisely what I mean.

NOTE: For Python 3, you will need to use input as opposed to raw_input

I assume you want to pause without input.

пауза в выполнении кода python

I have had a similar question and I was using signal:

, which will send signal 2 (i.e. SIGINT) to your python program. Your program will call your registered handler and proceed running.

I use the following for Python 2 and Python 3 to pause code execution until user presses Enter

пауза в выполнении кода python

пауза в выполнении кода python

As pointed out by mhawke and steveha’s comments, the best answer to this exact question would be:

For a long block of text, it is best to use input(‘Press to continue’) (or raw_input(‘Press to continue’) on Python 2.x) to prompt the user, rather than a time delay. Fast readers won’t want to wait for a delay, slow readers might want more time on the delay, someone might be interrupted while reading it and want a lot more time, etc. Also, if someone uses the program a lot, he/she may become used to how it works and not need to even read the long text. It’s just friendlier to let the user control how long the block of text is displayed for reading.

Источник

Python sleep(): Как выполнить код с задержкой?

пауза в выполнении кода python

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

Содержание статьи

В Python есть возможность вызвать функцию sleep() для симуляции задержки в выполнении программы. Быть может, вам нужно дождаться загрузки, скачивания или появления графического объекта на экране. Также может потребоваться сделать паузу между вызовами к веб API или запросами к базе данных. В таких случаях поможет добавление вызова функции sleep() в программу.

Главные аспекты данного руководства по вызову sleep() в Python:

Данная статья предназначена для разработчиков Python среднего уровня, что стремятся повысить свою квалификацию. Если это похоже на вас, приступим!

Вызов sleep() через time.sleep()

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

Есть вопросы по Python?

На нашем форуме вы можете задать любой вопрос и получить ответ от всего нашего сообщества!

Telegram Чат & Канал

Вступите в наш дружный чат по Python и начните общение с единомышленниками! Станьте частью большого сообщества!

Паблик VK

Одно из самых больших сообществ по Python в социальной сети ВК. Видео уроки и книги для вас!

Далее дан пример использования time.sleep() :

При запуске кода из консоли, задержку нужно проводить перед вводом нового оператора в REPL.

Вы можете протестировать, как долго продлиться сон с помощью модуля Python timeit:

Создадим что-то более практичное. Системному администратору всегда нужно быть в курсе, если какой-то из сайтов упал. Вы бы хотели иметь возможность проверить код состояния сайта регулярно, но запрашивать веб сервер постоянно нельзя, ведь это сильно повлияет на производительность. В Python одним из простых способов совершить такую проверку является использование системного вызова sleep() :

Если ошибок нет, код спокойно выполняется. Вне зависимости от того, что произойдет, программа уходит в сон на 60 секунд. Это значит, что доступ к сайту будет раз за минуту. URL, используемый в примере, содержит ошибки. Ежеминутный вывод на консоли выглядит следующим образом:

Попробуйте обновить код, используя проверенный хороший URL, к примеру https://www.google.com/. После этого вы можете перезапустить программу и проверить, что изменилось. Также можно попробовать обновить код для отправки сообщения или записи об ошибке. Для получения более подробной информации можете ознакомиться со статьями отправка писем smtp и логирование.

Вызов sleep() с декораторами

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

Другим возможным случаем использования sleep() является необходимость проверки состояния пользовательского интерфейса во время автоматического теста. В зависимости от компьютера, на котором запускается тест, пользовательский интерфейс может грузиться быстрее или медленнее обычного. Это может изменить отображаемое на экране во время проверки программой чего-то.

В данном случае можно указать программе, чтобы та погрузилась в сон на мгновенье и затем проверить все опять через несколько секунд. Это может означать разницу между прохождением или провалом теста.

Для добавления системного вызова sleep() в Python можно использовать декоратор в каждом из данных случаев. Разберем следующий пример:

Теперь переписывается uptime_bot() для использования нового декоратора:

На заметку: При желании более подробно узнать о том, как справляться с исключениями в Python, можете ознакомиться со статьей: Обработка исключений в Python

Декоратору можно добавить несколько улучшений. Если число попыток заканчивается, и он по-прежнему проваливается, тогда можно сделать так, чтобы он повторно вызвал последнюю ошибку. Декоратор подождет 3 секунды после последней неудачи, что не всегда нужно. Можете попробовать поэкспериментировать самостоятельно.

Вызов sleep() в потоках

Могут возникнуть ситуации, когда в Python требуется добавить вызов sleep() для потока. К примеру, запуск скрипта миграции для базы данных с миллионами записей. Здесь важно избежать простоя, а также не ждать дольше необходимого для завершения миграции, поэтому можно использовать потоки.

На заметку: Потоки являются одним из методов использования конкурентности в Python. Можно запустить несколько потоков одновременно, чтобы увеличить производительность приложения. Если потоки в Python являются для вас новой темой, ознакомьтесь со статьей модуль threading.

Чтобы клиенты не замечали какого-либо замедления, каждый поток должен работать в течение короткого периода времени, а затем уходить в сон. Есть два способа сделать это:

Источник

Как я могу сделать задержку в Python?

Я хотел бы знать, как поместить задержку в скрипт Python.

15 ответов

Вот еще один пример, когда что-то запускается примерно раз в минуту:

Вы можете использовать функцию sleep() в модуле времени. Может принимать аргумент с плавающей запятой для субсекундного разрешения.

Вопрос о задержке. Это может быть фиксированное время, но в некоторых случаях нам может понадобиться задержка, измеренная с прошлого раза. Вот одно из возможных решений:

Задержка, измеренная с прошлого раза (регулярно просыпается)

Генератор зуммера

Следующий код ( sleepy.py ) определяет генератор buzzergen :

Вызов обычного зуммера

И запустив его, мы видим:

Мы также можем использовать его непосредственно в цикле:

И, запустив его, мы можем увидеть:

Как мы видим, этот зуммер не слишком жесткий и позволяет нам справляться с регулярными сонными интервалами, даже если мы спим и выходим из обычного графика.

Как я могу сделать задержку в Python?

В одной теме я предлагаю функцию сна:

Это фактически приостанавливает обработку потока, в котором он вызывается операционной системой, что позволяет другим потокам и процессам выполняться во время сна.

Используйте его для этой цели или просто для задержки выполнения функции. Например:

Пример использования sleep с несколькими потоками и процессами

Чтобы продемонстрировать, создайте такой скрипт (сначала я попытался сделать это в интерактивной оболочке Python 3.5, но подпроцессам не удалось найти party_later по какой-то причине):

Пример вывода из этого скрипта:

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

Вы можете инициировать функцию, которая будет вызываться позднее в отдельном потоке, с помощью потокового объекта Timer :

В многопроцессорной библиотеке нет соответствующего объекта. Вы можете создать его, но, вероятно, по какой-то причине его не существует. Подпоток имеет гораздо больше смысла для простого таймера, чем целый новый подпроцесс.

time.sleep() (не использовать при использовании Tkinter):

pygame.time.wait() (не рекомендуется, если вы не используете окно pygame, но можете сразу же выйти из окна):

функции matplotlib pyplot.pause() (не рекомендуется, если вы не используете график, но вы можете выйти из графика мгновенно):

Наконец, метод driver.implicitly_wait() (селен):

Просто чтобы подождать секунду:

Это работает, потому что, делая:

Вы извлекаете функцию сна только из библиотеки времени (с использованием import time ), что означает, что вы можете просто вызвать его с помощью:

Вместо того, чтобы печатать

Который неуклюже долго печатать.

Вы также можете сделать это как

Не рекомендуется использовать это с Tkinter

Задержки могут быть реализованы с использованием трех методов.

Давайте начнем с самого простого:

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

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

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *