Как сделать секундомер в python
Перейти к содержимому

Как сделать секундомер в python

  • автор:

Секундомер на питоне

Изучаю понемногу Python, решил написать для практики секундомер. Вот он:

import time import os i = 0 while True: time.sleep(1) os.system('clear') i += 1 print(i//3600,(i//60)%60,i%60,sep=':') 

Интересуют несколько вопросов:

  • Как можно сделать простую смену цифр без полной очистки консоли каждую секунду?
  • Как изменить вывод прошедшего времени с 0:1:4 на 00:01:04?
  • Как в целом «причесать» код, где его можно было сделать лучше?

Arandelix
27.04.12 21:54:24 MSK

Насчёт первого посмотри этот тред.

Второе — .rjust(2, ‘0’), .zfill(2) или как в сях: ‘%02d:%02d:%02d’ % (hours, minutes, seconds)

Kalashnikov ★★★
( 27.04.12 22:06:04 MSK )
schizoid ★★★
( 27.04.12 22:23:35 MSK )

учти еще что твой код работает определенное время и суманный sleep 1 + d так что через ceil(1/d) секунд надо прибавить 2 сек вместо 1

bga_ ★★★★
( 27.04.12 23:31:10 MSK )

Разобрался со вторым пунктом, и примерно понял, как решить первый. ‘\r’ возвращает каретку на начало строки, но print переводит её на строку вниз — нужен аналог print, не переводящий строку.

Я правильно понял?

Arandelix
( 27.04.12 23:48:36 MSK ) автор топика
Ответ на: комментарий от bga_ 27.04.12 23:31:10 MSK

[arandelix@NetBook Python]$ time python stopwatch.py 00:00:01 00:00:02 00:00:03 00:00:04 00:00:05 real 0m5.325s user 0m0.297s sys 0m0.023s 

Одна итерация выполняется примерно 65 ms.
Если заменить time.sleep(1) на time.sleep(0.935) погрешность уменьшится?

Arandelix
( 27.04.12 23:56:59 MSK ) автор топика
Ответ на: комментарий от Arandelix 27.04.12 23:48:36 MSK

‘\r’ возвращает каретку на начало строки, но print переводит её на строку вниз — нужен аналог print, не переводящий строку

Можно написать сразу так:

Секундомер в Pythonе [дубликат]

да, спасибо а возможно использовать .sleep для того что б затригерить действие через указаний отрезок времени?

13 мар 2017 в 15:47
Что вы хотите, можно подробнее?
13 мар 2017 в 15:50

  • python
  • python-3.5
    Важное на Мете
Связанные
Похожие

Дизайн сайта / логотип © 2023 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2023.10.27.43697

Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.

Как реализовать простой секундомер?

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

  • Вопрос задан более трёх лет назад
  • 655 просмотров

Комментировать

Решения вопроса 1

swwso1

import time sec = 0 while True: print(sec) time.sleep(1) sec += 1

Ответ написан более трёх лет назад

Комментировать

Нравится 1 Комментировать

Секундомер. Библиотека time

Я делаю проект на питоне и мне нужно сделать таймер, который не будет отображаться пока я не выведу время, сначала я хотел сделать что-то подобное:
sec = 0
while нужное мне условие:
time.sleep(1)
sec += 1

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

Лучшие ответы ( 1 )
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:

Секундомер(и только секундомер).
Да,я в гугле рылся,и там всё в усложнённом варианте.Мне нужно только по простому,поскольку я в JS.

Кнопки в Canvas срабатываю только при нулевом значении Time.time;
В общем делаю инвентарь, для того что бы кнопки выхода из инвентаря или кнопки айтемов работали.

Определите структуру Time для хранения времени: struct Time
Добрый день! Помогите пожалуйста! Определите структуру Time для хранения времени: struct Time

Real time clock error — Check date and time setting
Всех приветствую! Ноутбук Lenovo b590, после помывки и просушки мат платы, при включении стал.

Автоматизируй это!

Эксперт Python

7540 / 4556 / 1206
Регистрация: 30.03.2015
Сообщений: 13,118
Записей в блоге: 29
Pasha Biceps, таймер использовать в отдельном потоке
Регистрация: 23.04.2020
Сообщений: 14
а как его использовать в отдельном потоке? я хз)

Эксперт Python

691 / 474 / 204
Регистрация: 22.03.2020
Сообщений: 1,052

Лучший ответ

Сообщение было отмечено Pasha Biceps как решение

Решение

1 2 3 4 5 6 7 8 9 10 11 12 13 14
import time now = time.time() sec = 1 while условие>: # Переменная sec будет увеличиваться каждую секунду if sec > time.time() - now: continue sec += 1 ######################### print(sec)

Эксперт Python

5415 / 3839 / 1214
Регистрация: 28.10.2013
Сообщений: 9,554
Записей в блоге: 1

ЦитатаСообщение от Pasha Biceps Посмотреть сообщение

а как его использовать в отдельном потоке?
Использовать готовый таймер из threading.
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь

При вызове time.time() выводится время, опережающее действительное на 12 минут 20 секунд
При вызове time.time() выводится время, опережающее действительное на 12 минут 20 секунд. Например.

Ищу опытного php, yii разработчика для постоянки (full-time/part-time)
Добрый день. У меня есть проект по бинарным опционам (вроде форекса), который я делал с.

Разница в координатах в run-time и design-time
Может кто-нибудь объяснить почему координаты любого объекта(например Tshape) отличаются во время.

Compile-time и run-time методы и функции
Добрый день. Есть две функции, которые делают идентичную работу: template<bool leftShift.

Разница в координатах в run-time и design-time
Может кто-нибудь объяснить почему координаты любого объекта(например Tshape) отличаются во время.

Ошибка выходящего параметра (time without time zone)
Всем добрый день. (server_version 8.3.3) Простая функция, в которой хочу получить время CREATE.

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

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