Metadata-Version: 1.0
Name: rpn
Version: 1.0
Summary: Reverse Polish Notation calculator.
Home-page: https://github.com/dustinrohde/python-rpn
Author: Dustin Rohde
Author-email: xdrohdex@gmail.com
License: MIT
Description: RPN
        ===
        
        Reverse Polish Notation calculator for Python.
        
        Binary Operators
        ----------------
        
        * ``+``: addition
        * ``-``: subtraction
        * ``*``: multiplication
        * ``/``: true division
        * ``%``: modulo
        * ``//``: floor division
        * ``**``: exponentation
        
        Unary Operators
        ---------------
        
        * ``abs``: absolute value
        * ``sqrt``: square root
        * ``ceil``: rounding up
        * ``floor``: rounding down
        
        Examples
        --------
        
        ::
            import decimal
        
            import rpn 
            result = rpn.solve_rpn('3.4 -3 abs + 100 sqrt -')
            print(result) # 3.6
        
            try:
                rpn.solve_rpn('3 3 3 +')
                rpn.solve_rpn('3 +')
                rpn.solve_rpn('abs')
                rpn.solve_rpn('3 a +')
            except RPNError:
                ...
        
            try:
                rpn.solve_rpn('0 5 /')
            except decimal.DivisionByZero:
                ...
        
            try:
                rpn.solve_rpn('-5 sqrt')
            except decimal.InvalidOperation:
                ...
        
            try:
                rpn.solve_rpn('9999999999999 9999999999999 **')
            except decimal.Overflow:
                ...
        
        CLI Usage
        ---------
        
        ::
            $ rpn "1 2 + 8 -"
            $ 5
        
Keywords: math calculator rpn arithmetic
Platform: UNKNOWN
