Skip to main content

A mathematical expression parser and evaluator.

Project description

meth: A mathematical expression parser.

A python package to parse and evaluate mathematical expressions.

Installation

pip install meth

or install it from source:

git clone https://github.com/sertdfyguhi/meth/
cd meth
python3 -m build
pip install dist/*.whl

Examples

More examples in the examples/ directory.

import meth

# tokenizing equations
meth.tokenize("5 + 2") # INT(5), PLUS, INT(2)

# parsing equations
meth.parse("2 * 10") # BinaryOpNode(INT(2), MUL, INT(10))

# evaluating equations
meth.evaluate("2 + 2") # 4
meth.evaluate("sqrt(9)") # 3

# evaluation with variables
evaluator = meth.Evaluator()
evaluator.evaluate("x = 5")
evaluator.evaluate("x") # 5

Todo

  • Lexer
  • Parser
    • Bracketing
    • Multiplication using brackets
    • Negative Numbers
    • Variables
    • Functions
  • Interpreter
    • Binary Operations
    • Unary Operations
    • Variables
    • Functions
  • Add mathematical functions
  • Accurate float calculations
  • Simplify an expression
  • Expand an expression
  • AST to Equation String
  • Documentation
  • Publish to PyPI

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

meth-1.2.1.tar.gz (21.2 kB view hashes)

Uploaded Source

Built Distribution

meth-1.2.1-py3-none-any.whl (24.0 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page