Поставить программу на паузу python

Вход() Метод используется в Python 3 для приема данных от пользователя. Иногда для целей программирования требуется подождать или приостановить задачу ввода на определенный период времени. Например, если в сценарии есть бесконечный цикл, который завершается в зависимости от ввода конкретного пользователя, то он будет ждать ввода от пользователя на каждой итерации цикла.

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

Приостановите скрипт, чтобы пользовательский ввод завершился:

Если вы хотите дождаться, пока пользователь нажмет любую клавишу перед завершением скрипта, вы можете вызвать Вход() с сообщением в конце скрипта. Следующий сценарий показывает, как можно приостановить завершение сценария и дождаться ввода пользователя. В

Уроки Python Как сделать задержку времени

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

#! / usr / bin / env python3
# Принимаем пользовательский ввод
название = Вход ( «Как тебя зовут? » )
# Проверить введенное значение
если ( название != «» ) :
# Распечатать приветственное сообщение, если значение не пустое
Распечатать ( «Здравствуйте,% s, добро пожаловать на наш сайт» %название )
еще :
# Распечатать пустое сообщение
Распечатать ( «Имя не может быть пустым». )
# Подождите, пока пользовательский ввод завершит программу
Вход ( «Нажмите любую клавишу, чтобы завершить программу» )
# Распечатать прощальное сообщение
Распечатать ( «Увидимся позже.» )

Выход:

После выполнения скрипта он ожидает ввода строки. Здесь «Фахмида» набирается как строковое значение. Приветственное сообщение печатается со значением и ожидает нажатия любой клавиши. После нажатия любой клавиши печатается прощальное сообщение.

Приостановить ввод на определенный период времени

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

#! / usr / bin / env python3
# Импортировать модуль времени

Python в EXE


Импортировать время
# Распечатать сообщение
Распечатать ( «Решите проблему, чтобы доказать, что вы человек». )
# Распечатать вопрос
Распечатать ( «Какая сумма 10 и 40? » )
# Распечатать сообщение об ожидании
Распечатать ( «Жду пять секунд для расчета . » )
# Подождите 2 секунды
время . спать ( 5 )
# Принимать ввод от пользователя
отвечать = Вход ( «Ваш ответ: » )
# Проверить ответ
если ( int ( отвечать ) == 50 ) :
Распечатать ( «Ваш ответ правильный. Отличная работа.» )
еще :
Распечатать ( «Вы не смогли доказать». )

Выход:

После запуска скрипта будет напечатан вопрос, в котором пользователю будет предложено подождать 5 секунд, чтобы узнать ответ. Здесь сценарий выполняется два раза с правильным ответом и неправильным ответом.

Читайте также:
Описание программы ultimaker cura

Приостановите скрипт, используя вход для отображения сообщений с инструкциями

Иногда требуется несколько раз приостановить скрипт, используя Вход() метод для разных целей. Процесс предоставления информации пользователю с помощью нескольких сообщений показан в следующем сценарии. Шаги для запуска любого скрипта Python показаны здесь с использованием нескольких Вход() метод. Пользователь должен нажать любую клавишу, чтобы показать следующие шаги. Первый Вход() используется для начала показа сообщения и последнего Вход() используется для отображения сообщения о завершении.

#! / usr / bin / env python3
# Распечатать начальное сообщение
Распечатать ( «Шаги по запуску скрипта на Python:» )
# Дождитесь любого нажатия клавиши
Вход ( «Нажмите любую клавишу для продолжения» )
# Дождитесь любого нажатия клавиши
Вход ( «Напишите сценарий в любом редакторе». )
# Дождитесь любого нажатия клавиши
Вход ( «Откройте терминал, нажав Alt + Ctrl + T». )
# Дождитесь любого нажатия клавиши
Вход ( «Введите: ‘python scriptname.py’». )
# Дождитесь любого нажатия клавиши
Вход ( «Вы получите результат, если сценарий не содержит ошибок». )
# Дождитесь любого нажатия клавиши
Вход ( «Нажмите любую клавишу, чтобы завершить». )
# Распечатать сообщение о завершении
Распечатать ( » п Прощай.» )

Выход:

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

Приостановить скрипт для определенного входного значения

Если вы хотите запускать некоторые сценарии непрерывно, пока пользователь не нажмет какую-либо конкретную клавишу, вам необходимо определить этот сценарий внутри любого бесконечного цикла. Эта задача показана в этом примере. Здесь объявлен бесконечный цикл while, который, как ожидается, будет принимать два числа и выводить сумму этих чисел на каждой итерации. В конце цикла он будет ждать, пока пользователь нажмет ‘у’, Чтобы продолжить цикл и повторить сценарий еще раз.

#! / usr / bin / env python3
# Определить бесконечный цикл
пока ( Истинный ) :
# Возьмем два целых числа
Икс = int ( Вход ( «Введите номер:» ) )
у = int ( Вход ( «Введите номер:» ) )
# Сложить два числа
результат = х + у
# Распечатать результат суммирования
Распечатать ( «Сумма% d и% d равна:% d» % ( Икс , у , результат ) )
# Дождитесь продолжения ввода пользователя или завершите цикл
ответ = Вход ( «Вы хотите сделать еще раз? (да / нет) » )
# Завершить скрипт, если введено значение ‘n’
если ( ответ ниже ( ) == ‘п’ ) :
сломать

Выход:

Здесь скрипт внутри цикла while выполняется два раза. В первый раз после вычисления суммирования ‘Y’ нажимается, и сценарий цикла повторяется снова. Когда пользователь нажал ‘N’ затем цикл завершается.

Вывод:

Пауза при вводе пользователем данных — очень распространенное требование любого языка программирования. Различные цели паузы для ввода показаны в этой статье на очень простых примерах Python. Я надеюсь, что эта статья поможет читателю узнать, как используется пауза для ввода, и применять ее в скрипте, когда это необходимо.

Источник: ciksiti.com

Как реализовать функцию кнопки паузы и возобновления с помощью tkinter python

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

Комментарии (4)

Когда вы хотите возобновить свою программу

нажатием на кнопку типа паузы

Графический интерфейс и sleep или input в одном потоке не работают вместе. Вы не дали информации о своей реальной программе, поэтому трудно дать какой-либо совет, как правильно реализовать паузу.

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

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

Источник: reddeveloper.ru

пауза — python ожидание

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

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

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

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

>>> from time import sleep >>> sleep(4)

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

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

>>> def party_time(): . print(‘hooray!’) . >>> sleep(3); party_time() hooray!

«Ура!» напечатано через 3 секунды после нажатия Enter .

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

Опять же, sleep приостанавливает вашу нить — он использует только нулевую вычислительную мощность.

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

from concurrent.futures import ThreadPoolExecutor, ProcessPoolExecutor, as_completed from time import sleep, time def party_later(kind=», n=»): sleep(3) return kind + n + ‘ party time!: ‘ + __name__ def main(): with ProcessPoolExecutor() as proc_executor: with ThreadPoolExecutor() as thread_executor: start_time = time() proc_future1 = proc_executor.submit(party_later, kind=’proc’, n=’1′) proc_future2 = proc_executor.submit(party_later, kind=’proc’, n=’2′) thread_future1 = thread_executor.submit(party_later, kind=’thread’, n=’1′) thread_future2 = thread_executor.submit(party_later, kind=’thread’, n=’2′) for f in as_completed([ proc_future1, proc_future2, thread_future1, thread_future2,]): print(f.result()) end_time = time() print(‘total time to execute four 3-sec functions:’, end_time — start_time) if __name__ == ‘__main__’: main()

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

thread1 party time!: __main__ thread2 party time!: __main__ proc1 party time!: __mp_main__ proc2 party time!: __mp_main__ total time to execute four 3-sec functions: 3.4519670009613037

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

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

>>> from threading import Timer >>> t = Timer(3, party_time, args=None, kwargs=None) >>> t.start() >>> >>> hooray! >>>

Пустая строка иллюстрирует, что функция напечатана на моем стандартном уровне, и мне пришлось нажать Enter, чтобы я был в строке.

Поверхность этого метода заключается в том, что, пока поток Timer ждет, я смог сделать другие вещи, в этом случае, нажав Enter один раз — до выполнения функции (см. Первое пустое приглашение).

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

Библиотека tkinter в стандартной библиотеке Python представляет собой интерактивный инструмент, который можно импортировать. В принципе, вы можете создавать кнопки и поля, всплывающие окна и прочее, которые отображаются в виде окон, которыми вы управляете с помощью кода.

Если вы используете tkinter, НЕ ИСПОЛЬЗУЙТЕ TIME.SLEEP() потому что это TIME.SLEEP() вашу программу. Это случилось со мной. Вместо этого используйте root.after() и замените значения на сколько секунд, с миллисекундами. Например, time.sleep(1) эквивалентен root.after(1000) в tkinter.

В противном случае, time.sleep() , о чем многие ответы указывают, это путь.

В то время как все остальные предложили модуль time де-факто, я подумал, что поделюсь другим методом с использованием функции matplotlib от pyplot , pause .

Пример

from matplotlib import pyplot as plt plt.pause(5) # Pauses the program for 5 seconds

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

Это позволит вам import если вы уже импортировали matplotlib .

Читайте также:
Отзывы о программе 20 приседаний

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

from time import sleep sleep(0.1) # Time in seconds.

Есть 4 метода, которые я знаю: time.sleep() , pygame.time.wait() , pyplot.pause() и matplotlib’s. pyplot.pause() после .after() .

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

import time print(‘Hello’) time.sleep(5) #number of seconds print(‘Bye’)

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

import pygame #If you are going to use the time module #don’t do «from pygame import *» pygame.init() print(‘Hello’) pygame.time.wait(5000)#milliseconds print(‘Bye’)

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

import matplotlib print(‘Hello’) matplotlib.pyplot.pause(5)#seconds print(‘Bye’)

Наконец, метод .after() (лучше всего с Tkinter):

import tkinter as tk #Tkinter for python 2 root = tk.Tk() print(‘Hello’) def ohhi(): print(‘Oh, hi!’) root.after(5000, ohhi)#milliseconds and then a function print(‘Bye’)

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

Чтобы заставить его подождать секунду:

from time import sleep sleep(1)

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

from time import sleep

вы извлекаете time.sleep() только из библиотеки времени, что означает, что вы можете просто вызвать ее с помощью:

sleep(seconds)

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

time.sleep()

который неудобно долго набирать.

С помощью этого метода вы не получите доступ к другим функциям библиотеки времени, и у вас не может быть переменной, называемой sleep. Но вы можете создать переменную, называемую временем.

Выполнение from [library] import [function] (, [function2]) отлично, если вы просто хотите определенные части модуля.

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

import time time.sleep(1)

и у вас будет доступ к другим функциям библиотеки времени, например time.clock() пока вы вводите time.[function]() , но вы не можете создать переменное время.

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

Начнем с самого простого:

import time time.sleep(5) # Delay for 5 seconds.

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

driver.implicitly_wait(5)

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

self.wait.until(EC.presence_of_element_located((By.ID, ‘UserName’))

Лучший способ задержать время в Python — использовать библиотеку time . Как это:

import time time.sleep(10)

Просто замените 10 на количество секунд, которое вы хотите отложить. Вы можете использовать такие форматы, как ’10 .1 ‘,’ 5.07 ‘и т. Д.

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

Немного веселья с сонным generator .

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

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

Ситуация может заключаться в том, что мы хотим делать что-то как можно last_time , и мы не хотим беспокоиться о всех last_time , next_time за нашим кодом.

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

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

import time from itertools import count def buzzergen(period): nexttime = time.time() + period for i in count(): now = time.time() tosleep = nexttime — now if tosleep > 0: time.sleep(tosleep) nexttime += period else: nexttime = now + period yield i, nexttime

Вызов регулярного buzzergen

from sleepy import buzzergen import time buzzer = buzzergen(3) # Planning to wake up each 3 seconds print time.time() buzzer.next() print time.time() time.sleep(2) buzzer.next() print time.time() time.sleep(5) # Sleeping a bit longer than usually buzzer.next() print time.time() buzzer.next() print time.time()

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

1400102636.46 1400102639.46 1400102642.46 1400102647.47 1400102650.47

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru