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.

stouputils print examples
remove_colors(text: str) str[source]

Remove the colors from a text

is_same_print(*args: Any, **kwargs: Any) bool[source]

Checks if the current print call is the same as the previous one.

info(*values: Any, color: str = '\x1b[92m', text: str = 'INFO ', prefix: str = '', file: TextIO | list[TextIO] | None = None, **print_kwargs: 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