stouputils.print module
This module provides utility functions for printing messages with different levels of importance, If a message is printed multiple times, it will be displayed as “(xN) message” where N is the number of times the message has been printed.
The functions are such as:
- info() 
- debug() 
- suggestion() 
- progress() 
- warning() 
- error() 
- whatisit(): a function to print the type of each value and the value itself (and few other things) 
- breakpoint(): a breakpoint function to pause the program while calling whatisit() 
- logging_to: a set of file-like objects that will receive log messages without ANSI color codes, see stouputils.ctx.LogToFile for easy logging 
Here is a demonstration gif showing examples of uses:
 
- is_same_print(*args: Any, **kwargs: Any) bool[source]
- Checks if the current print call is the same as the previous one. 
- info(*values: ~typing.Any, color: str = '\x1b[92m', text: str = 'INFO ', prefix: str = '', file: ~typing.TextIO | list[~typing.TextIO] = <_io.TextIOWrapper name='<stdout>' mode='w' encoding='utf-8'>, **print_kwargs: ~typing.Any) None[source]
- Print an information message looking like “[INFO HH:MM:SS] message” in green by default. - Parameters:
- values (Any) – Values to print (like the print function) 
- color (str) – Color of the message (default: GREEN) 
- text (str) – Text of the message (default: “INFO “) 
- prefix (str) – Prefix to add to the values 
- file (TextIO|list[TextIO]) – File(s) to write the message to (default: sys.stdout) 
- print_kwargs (dict) – Keyword arguments to pass to the print function 
 
 
- debug(*values: Any, **print_kwargs: Any) None[source]
- Print a debug message looking like “[DEBUG HH:MM:SS] message” 
- suggestion(*values: Any, **print_kwargs: Any) None[source]
- Print a suggestion message looking like “[SUGGESTION HH:MM:SS] message” 
- progress(*values: Any, **print_kwargs: Any) None[source]
- Print a progress message looking like “[PROGRESS HH:MM:SS] message” 
- warning(*values: Any, **print_kwargs: Any) None[source]
- Print a warning message looking like “[WARNING HH:MM:SS] message” in sys.stderr 
- error(*values: Any, exit: bool = True, **print_kwargs: Any) None[source]
- Print an error message (in sys.stderr) and optionally ask the user to continue or stop the program - Parameters:
- values (Any) – Values to print (like the print function) 
- exit (bool) – Whether to ask the user to continue or stop the program, false to ignore the error automatically and continue 
- print_kwargs (dict) – Keyword arguments to pass to the print function 
 
 
- whatisit(*values: ~typing.Any, print_function: ~typing.Callable[[...], None] = <function debug>, max_length: int = 250, **print_kwargs: ~typing.Any) None[source]
- Print the type of each value and the value itself, with its id and length/shape. - The output format is: “type, <id id_number>: (length/shape) value” - Parameters:
- values (Any) – Values to print 
- print_function (Callable) – Function to use to print the values (default: debug()) 
- max_length (int) – Maximum length of the value string to print (default: 250) 
- print_kwargs (dict) – Keyword arguments to pass to the print function 
 
 
- breakpoint(*values: ~typing.Any, print_function: ~typing.Callable[[...], None] = <function warning>, **print_kwargs: ~typing.Any) None[source]
- Breakpoint function, pause the program and print the values. - Parameters:
- values (Any) – Values to print 
- print_function (Callable) – Function to use to print the values (default: warning()) 
- print_kwargs (dict) – Keyword arguments to pass to the print function