Контекстный менеджер Python, измеряющий времяPython

Программы на Python
Anonymous
Контекстный менеджер Python, измеряющий время

Сообщение Anonymous »

Я изо всех сил пытаюсь создать фрагмент кода, который позволял бы измерять время, проведенное в операторе with, и присваивать измеренное время (число с плавающей запятой) переменной, указанной в операторе with.
/>

Код: Выделить всё

import time

class catchtime:
def __enter__(self):
self.t = time.clock()
return 1

def __exit__(self, type, value, traceback):
return time.clock() - self.t

with catchtime() as t:
pass
Этот код оставляет t=1, а не разницу между вызовами clock(). Как подойти к этой проблеме? Мне нужен способ присвоить новое значение из метода выхода.

PEP 343 более подробно описывает, как работает диспетчер контактов, но большую часть этого я не понимаю.< /п>

Подробнее здесь: https://stackoverflow.com/questions/339 ... sures-time

Вернуться в «Python»