Skip to main content

pytictoc contains a class TicToc which replicates the functionality of MATLAB’s tic and toc for easily timing sections of code. Under the hood, pytictoc uses the default_timer function from Python’s timeit module.

INSTALLATION

pytictoc can be installed and updated via conda or pip.

pip

pip install pytictoc
pip install pytictoc --upgrade

conda

conda install pytictoc -c ecf
conda update pytictoc -c ecf

USAGE

Basic usage:

>> from pytictoc import TicToc
>> t = TicToc() #create instance of class

>> t.tic() #Start timer
>> t.toc() #Time elapsed since t.tic()
Elapsed time is 2.612231 seconds.

A string passed to the toc method changes the printed message. This can be useful to differentiate timing of different sections in the same script.

>> t.toc('Section 1 took')
Section 1 took 16.494467 seconds.

An optional keyword argument restarts the timer (equivalent to t.tic()) after reporting the time elapsed.

>> t.toc(restart=True)
Elapsed time is 36.986837 seconds.
>>t.toc()
Elapsed time is 2.393425 seconds.

If you want to return the time elapsed to a variable rather than printing it, use the tocvalue method.

>>spam = t.tocvalue()
>>spam
20.156261717544602

The TicToc class can be used within a context manager as an alternative way to time a section of code. The time taken to run the code inside the with statement will be reported on exit.

>>with TicToc():
>>    spam = [x+1 for x in range(10000)]
Elapsed time is 0.002343 seconds.

Determining and setting the timer

pytictoc uses timeit.default_timer to time code. On Python 3.3 and later, this is an alias for time.perf_counter. On earlier versions of Python it is an alias for the most precise timer for a given system.

To see which function is being used:

>>import pytictoc
>>pytictoc.default_timer
<function time.perf_counter>

You can change the timer by simple assignment.

>>import time
>>pytictoc.default_timer = time.clock
>>pytictoc.default_timer
<function time.clock>

Release files for pytictoc 1.5.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pytictoc 1.5.3
File Size Uploaded
pytictoc-1.5.3.tar.gz 5.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pytictoc 1.5.3
File Interpreter ABI Platform
pytictoc-1.5.3-py2.py3-none-any.whl Python 2, Python 3 none any Details

Total release size: 9.0 kB

Release files / pytictoc-1.5.3.tar.gz

Download URL pytictoc-1.5.3.tar.gz
Size 5.0 kB
Tags Source
SHA-256 checksum
How to use checksums
0722acd1ea60d8de31e7babeb11200d04067f94e7dece5e86e16ffd2eb7940cf
BLAKE2b-256 checksum
How to use checksums
4cbe7652410c5de4ab8a8fb16c52f824531ae8c697b13ca44b3ebbeac2cc005c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.3

Release files / pytictoc-1.5.3-py2.py3-none-any.whl

Download URL pytictoc-1.5.3-py2.py3-none-any.whl
Size 4.0 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
df4547aa839f2e39f64e4aa0c4af3fe441e8cea6ecaecf239fb3f0daf1afc8cb
BLAKE2b-256 checksum
How to use checksums
fa47a802641f9efe9f774902383e6ca8f75af5531a1cd71c6e738dcb2c84118c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.3

Release history Release notifications | RSS feed

This release

1.5.3 This release

2 release files

1.5.2

2 release files

1.5.1

2 release files

1.5.0

2 release files

1.4.0

2 release files

1.3.0

2 release files

1.2.0

2 release files

1.1.2

2 release files

1.1.1

1 release file

1.1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page