Получите галочки таймера в Python

41
задан Infinite Recursion 18 June 2014 в 15:19
поделиться

4 ответа

В time модуль, существует две функции синхронизации: time и clock. time дает Вам "стенное" время, если это - то, о чем Вы заботитесь.

Однако Python в документах говорится, что clock должен использоваться для сравнительного тестирования. Обратите внимание, что clock ведет себя отличающийся в отдельных системах:

  • на MS Windows, это использует функцию Win32 QueryPerformanceCounter () с "разрешением обычно лучше, чем микросекунда". Это не имеет никакого особого значения, это - просто число (это начинает рассчитывать в первый раз, когда Вы звоните clock в свой процесс).
    # ms windows
    t0= time.clock()
    do_something()
    t= time.clock() - t0 # t is wall seconds elapsed (floating point)
  • на *отклоняют, clock процессорное время отчетов. Теперь, это отличается, и по всей вероятности значение, которое Вы хотите, так как Ваша программа почти никогда не является единственным процессом, запрашивающим процессорное время (даже если у Вас нет никаких других процессов, ядро использует процессорное время время от времени). Так, это число, которое обычно является smallerВ№, чем стенное время (т.е. time.time () - t0), более значимо при сравнительном тестировании кода:
    # linux
    t0= time.clock()
    do_something()
    t= time.clock() - t0 # t is CPU seconds elapsed (floating point)

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

В№, если поточная обработка не входит в way†¦

ВІ Python ≥3.3: существуют time.perf_counter() и time.process_time() . perf_counter используется timeit модуль.

34
ответ дан tzot 27 November 2019 в 00:39
поделиться

То, в чем Вы нуждаетесь, time() функция от time модуль:

import time
start = time.time()
do_long_code()
print "it took", time.time() - start, "seconds."

можно использовать модуль timeit для большего количества опций все же.

31
ответ дан blackwing 27 November 2019 в 00:39
поделиться

модуль времени в Python предоставляет Вам доступ к часам () функция, которая возвращает время в секундах как плавающая точка.

Различные системы будут иметь различную точность на основе своей внутренней установки часов (галочки в секунду), но это обычно находится, по крайней мере, под 20milliseconds, и в некоторых случаях лучше, чем несколько микросекунд.

-Adam

2
ответ дан Adam Davis 27 November 2019 в 00:39
поделиться
import datetime

start = datetime.datetime.now()
do_long_code()
finish = datetime.datetime.now()
delta = finish - start
print delta.seconds

С полуночи:

import datetime

midnight = datetime.datetime.now().replace(hour=0, minute=0, second=0, microsecond=0)
now = datetime.datetime.now()
delta = now - midnight
print delta.seconds
2
ответ дан Harley Holcombe 27 November 2019 в 00:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: