Как остановить программу в python без модуля time имея возможность восстановить работу программы?
Я создаю голосового помощника в питоне и нужно, чтобы при определённых действиях он останавливался на какое то время, но не с модулем time, и ещё мне нужно, чтобы при определённых действиях программа могла продолжить работу.
Ответы (1 шт):
Не использовать модуль time не выход! Как я понял, вам нужно лишь приостановить выполнение скрипта?
while True: continue
Лично у меня, потребляемое ЦП дошло до 60%. НЕ круто, чел.
А на счет этого:
while True:
time.sleep(0.1)
Диспетчер задач вовсе не видел потребление ЦП 0(!)%. Так воот. Это вам мысль к размышлению. Вам стоит поискать оптимальный баланс отклик/цена.
Ближе к вашей задаче: почему вы отказываетесь от бесконечного цикла с проверкой на «определенные действия», при которых программа продолжит работу? По мне так проще - лучше.
import time
def asleep():
""" Я, к сожалению, не имею никаких «определенных действий»,
поэтому.. СПИ ВЕЧНО, МО-ыта.2
"""
return True
while asleep():
time.sleep(.1)
Я действительно не понимаю вашей категоричности по поводу использования модуля time, ведь это по моему единственный выход реализовать это более менее на чистом python'е. Может вы экстремист и хотите удариться в написание дополнительной мини-утилиты под вашу задачу, в которой вы так же будете использовать библиотеку времени? Ну, это, конечно, выход для некоторых. Повторюсь: проще - лучше.