A very simple yet customizable package to add timestamps to your print statements.
Reason this release was yanked:
Incorrect default color parameter
Project description
█████╗ ████████╗████████╗███████╗ ███╗ ███╗ ██████╗ ████████╗███████╗
██╔══██╗╚══██╔══╝╚══██╔══╝██╔════╝ ████╗ ████║ ██╔══██╗╚══██╔══╝██╔════╝
███████║ ██║ ██║ █████╗ ██╔████╔██║ ██████╔╝ ██║ ███████╗
██╔══██║ ██║ ██║ ██╔══╝ ██║╚██╔╝██║ ██╔═══╝ ██║ ╚════██║
██║ ██║██╗██║██╗ ██║██╗███████╗██╗██║ ╚═╝ ██║██╗██║██╗ ██║██╗███████║██╗
╚═╝ ╚═╝╚═╝╚═╝╚═╝ ╚═╝╚═╝╚══════╝╚═╝╚═╝ ╚═╝╚═╝╚═╝╚═╝ ╚═╝╚═╝╚══════╝╚═╝
𝗔dd 𝗧imestamps 𝗧o 𝗘ach one of 𝗠y 𝗣rint statemen𝗧𝗦
A very simple yet customizable Python package to add timestamps to your print statements.
It supports replacing the default 'print()', keeping all of its default options, or use the built-in "printt()" command, that accepts all the same arguments as "print()". You can also choose to use different colors on your timestamp.
Installation
To install, run
pip install attempts
Usage
Import the package and initialize with init().
The only required parameter is 'replace_print'.
import attempts
import time
attempts.init(replace_print=True)
print("Hello World")
time.sleep(0.5)
print("This is a new line after a 500ms sleep")
time.sleep(0.42)
print("This is yet another line after a 420ms sleep")
Demo
Basic demo:
Parameters
replace_print: bool
The only mandatory parameter.
If set to False, will not replace the default 'print()'. Instead, you'll need to use 'printt()' to output timestamped messages.
If set to True, will replace all calls of 'print()' with the timestamped version.
timestamp_start: str
The character at the start of the timestamp.
Default: '[' - Square Bracket
timestamp_end: str
The character at the end of the timestamp.
Default: ']' - Square Bracket
timestamp_format: str
A string containing the format of the timestamp. It uses any strings formats accepted by the strftime() method.
Default: '%H:%M:%S.%f' - Hours, minutes, seconds and microseconds.
Available Codes:
Code | Meaning | Example |
---|---|---|
%a | Abbreviated weekday name. | Sun, Mon, ... |
%A | Full weekday name. | Sunday, Monday, ... |
%w | Weekday as a decimal number. | 0, 1, ..., 6 |
%d | Day of the month as a zero-padded decimal. | 01, 02, ..., 31 |
%-d | Day of the month as a decimal number. | 1, 2, ..., 30 |
%b | Abbreviated month name. | Jan, Feb, ..., Dec |
%B | Full month name. | January, February, ... |
%m | Month as a zero-padded decimal number. | 01, 02, ..., 12 |
%-m | Month as a decimal number. | 1, 2, ..., 12 |
%y | Year without century as a zero-padded decimal number. | 00, 01, ..., 99 |
%-y | Year without century as a decimal number. | 0, 1, ..., 99 |
%Y | Year with century as a decimal number. | 2013, 2019 etc. |
%H | Hour (24-hour clock) as a zero-padded decimal number. | 00, 01, ..., 23 |
%-H | Hour (24-hour clock) as a decimal number. | 0, 1, ..., 23 |
%I | Hour (12-hour clock) as a zero-padded decimal number. | 01, 02, ..., 12 |
%-I | Hour (12-hour clock) as a decimal number. | 1, 2, ... 12 |
%p | Locale’s AM or PM. | AM, PM |
%M | Minute as a zero-padded decimal number. | 00, 01, ..., 59 |
%-M | Minute as a decimal number. | 0, 1, ..., 59 |
%S | Second as a zero-padded decimal number. | 00, 01, ..., 59 |
%-S | Second as a decimal number. | 0, 1, ..., 59 |
%f | Microsecond as a decimal number, zero-padded on the left. | 000000 - 999999 |
%z | UTC offset in the form +HHMM or -HHMM. | |
%Z | Time zone name. | |
%j | Day of the year as a zero-padded decimal number. | 001, 002, ..., 366 |
%-j | Day of the year as a decimal number. | 1, 2, ..., 366 |
%U | Week number of the year (Sunday as the first day of the week). All days in a new year preceding the first Sunday are considered to be in week 0. | 00, 01, ..., 53 |
%W | Week number of the year (Monday as the first day of the week). All days in a new year preceding the first Monday are considered to be in week 0. | 00, 01, ..., 53 |
%c | Locale’s appropriate date and time representation. | Mon Sep 30 07:06:05 2013 |
%x | Locale’s appropriate date representation. | 09/30/13 |
%X | Locale’s appropriate time representation. | 07:06:05 |
%% | A literal '%' character. | % |
timestamp_color: str
The color of the text.
Uses the Colorama package. Please see the project for compatibility details: https://pypi.org/project/colorama/
Available colors:
BLACK
BLUE
CYAN
GREEN
MAGENTA
RED
WHITE
YELLOW
LIGHTBLACK_EX
LIGHTBLUE_EX
LIGHTCYAN_EX
LIGHTGREEN_EX
LIGHTMAGENTA_EX
LIGHTRED_EX
LIGHTWHITE_EX
LIGHTYELLOW_EX
ROADMAP
- Add option to choose timestamp color
- Add option to benchmark using a key and output time delta
- Add option to store timestamps in memory, given a variable limit, to optmize memory usage
- Add option to output a formatted table with outputs
License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file attempts-0.2.tar.gz
.
File metadata
- Download URL: attempts-0.2.tar.gz
- Upload date:
- Size: 4.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8e41c02bda972553070e55b498332654a91f117dded6d5a6fc22dc128ccdd313 |
|
MD5 | d87c63df8439d944c46b0e375f33a8fa |
|
BLAKE2b-256 | a5cfcbbc51effdb75730888fbb1d4af122c64df4711bcca63ff847f7c1ce5764 |
File details
Details for the file attempts-0.2-py3-none-any.whl
.
File metadata
- Download URL: attempts-0.2-py3-none-any.whl
- Upload date:
- Size: 5.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0ee1e1290dc56a7780eae7e8785611a0f0bba8b14187e627c2f857e2c33936c3 |
|
MD5 | fc83c58056b777849585b976233c4c4d |
|
BLAKE2b-256 | ab3543c3cdf4f17260e50e2bce4c3bd4cf502370f5c151c13e48703ccfb2394f |