Timer

class systemtools.Timer(exit_message=None, enter_message=None, print_continuously_from_background=False, verbose=True)

A timing context manager:

>>> timer = systemtools.Timer()
>>> with timer:
...     for _ in range(1000000):
...         x = 1 + 1
...
>>> timer.elapsed_time 
0.092742919921875

The timer can also be accessed from within the with block:

>>> with systemtools.Timer() as timer: 
...     for _ in range(5):
...         for _ in range(1000000):
...             x = 1 + 1
...         print(timer.elapsed_time)
...
0.101150989532
0.203935861588
0.304930925369
0.4057970047
0.50649189949

Timers can be reused between with blocks. They will reset their clock on entering any with block.

Lineage

digraph InheritanceGraph { graph [background=transparent, bgcolor=transparent, color=lightslategrey, fontname=Arial, outputorder=edgesfirst, overlap=prism, penwidth=2, rankdir=LR, root="__builtin__.object", splines=spline, style="dotted, rounded", truecolor=true]; node [colorscheme=pastel19, fontname=Arial, fontsize=12, penwidth=2, style="filled, rounded"]; edge [color=lightsteelblue2, penwidth=2]; subgraph cluster_abctools { graph [label=abctools]; "abjad.tools.abctools.AbjadObject.AbjadObject" [color=1, group=0, label=AbjadObject, shape=box]; "abjad.tools.abctools.AbjadObject.AbstractBase" [color=1, group=0, label=AbstractBase, shape=box]; "abjad.tools.abctools.ContextManager.ContextManager" [color=1, group=0, label=ContextManager, shape=oval, style=bold]; "abjad.tools.abctools.AbjadObject.AbjadObject" -> "abjad.tools.abctools.ContextManager.ContextManager"; "abjad.tools.abctools.AbjadObject.AbstractBase" -> "abjad.tools.abctools.AbjadObject.AbjadObject"; } subgraph cluster_systemtools { graph [label=systemtools]; "abjad.tools.systemtools.Timer.Timer" [color=black, fontcolor=white, group=2, label=<<B>Timer</B>>, shape=box, style="filled, rounded"]; } subgraph cluster_builtins { graph [label=builtins]; "builtins.object" [color=2, group=1, label=object, shape=box]; } "abjad.tools.abctools.ContextManager.ContextManager" -> "abjad.tools.systemtools.Timer.Timer"; "builtins.object" -> "abjad.tools.abctools.AbjadObject.AbstractBase"; }

Bases

Attribute summary

elapsed_time Elapsed time.
enter_message Timer enter message.
exit_message Timer exit message.
print_continuously_from_background Is true when timer should print continuously from background.
start_time Start time of timer.
stop_time Stop time of timer.
total_time_message Gets total time message.
verbose Is true if timer should print messages.
__enter__() Enters context manager.
__eq__(argument) Is true when ID of argument equals ID of Abjad object.
__exit__(exc_type, exc_value, traceback) Exist context manager.
__format__([format_specification]) Formats Abjad object.
__hash__() Hashes Abjad object.
__ne__(argument) Is true when Abjad object does not equal argument.
__repr__() Gets interpreter representation of Abjad object.

Read-only properties

Timer.elapsed_time

Elapsed time.

Return float or none.

Timer.enter_message

Timer enter message.

Returns string.

Timer.exit_message

Timer exit message.

Returns string.

Timer.print_continuously_from_background

Is true when timer should print continuously from background.

Returns true or false.

Timer.start_time

Start time of timer.

Returns time.

Timer.stop_time

Stop time of timer.

Returns time.

Timer.total_time_message

Gets total time message.

Truncated to the nearest second.

Returns string.

Timer.verbose

Is true if timer should print messages. Otherwise false.

Returns true or false.

Special methods

Timer.__enter__()

Enters context manager.

Returns context manager.

(AbjadObject).__eq__(argument)

Is true when ID of argument equals ID of Abjad object. Otherwise false.

Returns true or false.

Timer.__exit__(exc_type, exc_value, traceback)

Exist context manager.

Returns none.

(AbjadObject).__format__(format_specification='')

Formats Abjad object.

Set format_specification to ‘’ or ‘storage’. Interprets ‘’ equal to ‘storage’.

Returns string.

(AbjadObject).__hash__()

Hashes Abjad object.

Required to be explicitly redefined on Python 3 if __eq__ changes.

Returns integer.

(AbjadObject).__ne__(argument)

Is true when Abjad object does not equal argument. Otherwise false.

Returns true or false.

(AbjadObject).__repr__()

Gets interpreter representation of Abjad object.

Returns string.