diff --git a/src/api/printable_result.py b/src/api/printable_result.py index 8718959..2fcb13b 100644 --- a/src/api/printable_result.py +++ b/src/api/printable_result.py @@ -7,11 +7,16 @@ class PrintableResult: def __init__(self, result: Result): self._result = result + self.has_printed = False def print(self): """Prints the result to the console.""" + if self.has_printed: + return + stringifier = ConsoleStringifier(c.configuration.to_stringifier_config()) print(stringifier.result_to_str(self._result)) + self.has_printed = True def to_latex_str(self) -> str: """Converts the result to a string that can be used in LaTeX documents. diff --git a/src/api/res.py b/src/api/res.py index ba06ff7..f26f44a 100644 --- a/src/api/res.py +++ b/src/api/res.py @@ -33,6 +33,7 @@ def res( stat: Union[float, int, str, Decimal, None] = None, sigfigs: Union[int, None] = None, decimal_places: Union[int, None] = None, + print: Union[bool, None] = None, # pylint: disable=redefined-builtin ) -> PrintableResult: """ Declares your result. Give it a name and a value. You may also optionally provide @@ -84,7 +85,7 @@ def res( # Print automatically printable_result = PrintableResult(result) - if c.configuration.print_auto: + if (c.configuration.print_auto and print is not False) or print is True: printable_result.print() # Export automatically