Реализация секундомера на Python
Следующий пример использует модуль time для реализации секундомера:
Пример
import time
print('Нажмите Enter, чтобы начать отсчёт, нажмите Ctrl + C, чтобы остановить отсчёт.')
while True:
input("") # Дождаться, пока пользователь нажмёт Enter, чтобы начать отсчёт
start_time = time.time() # Записать время начала
print('Запуск отсчёта...')
try:
while True:
elapsed_time = round(time.time() - start_time, 0) # Вычислить прошедшее время
# Ключевое исправление: flush=True принудительно обновляет в реальном времени + \r перезаписывает начало строки
print(f'Отсчёт: {elapsed_time} seconds', end="\r", flush=True)
time.sleep(1)
except KeyboardInterrupt: # Перехватить сигнал прерывания Ctrl + C
end_time = time.time() # Записать время окончания
total_time = round(end_time - start_time, 2)
print(f'\nОтсчёт времени завершён, общее время: {total_time} seconds')
break
Результат теста:
按下回车开始计时,按下 Ctrl + C 停止计时。 开始计时... ^C时: 3.0 秒 计时结束,总共时间为: 3.77 秒Другие расширения