>>> from py_expression_eval import Parser
>>> parser = Parser()
>>> parser.parse('1E3*x')
Traceback (most recent call last):
File "<input>", line 1, in <module>
File "/home/kang/Envs/simright_cpython_2.7.13/lib/python2.7/site-packages/py_expression_eval/__init__.py", line 610, in parse
self.error_parsing(self.pos, 'unexpected variable')
File "/home/kang/Envs/simright_cpython_2.7.13/lib/python2.7/site-packages/py_expression_eval/__init__.py", line 639, in error_parsing
raise Exception(self.errormsg)
Exception: parse error [column 3]: unexpected variable
>>> parser.parse('1e3*x')
Traceback (most recent call last):
File "<input>", line 1, in <module>
File "/home/kang/Envs/simright_cpython_2.7.13/lib/python2.7/site-packages/py_expression_eval/__init__.py", line 610, in parse
self.error_parsing(self.pos, 'unexpected variable')
File "/home/kang/Envs/simright_cpython_2.7.13/lib/python2.7/site-packages/py_expression_eval/__init__.py", line 639, in error_parsing
raise Exception(self.errormsg)
Exception: parse error [column 3]: unexpected variable
>>> parser.parse('1000*x')
<py_expression_eval.Expression instance at 0x7f72039d4998>
As both 1e3 and 1E3 are valid numbers in Python, they shall be allowed to be used in expression.
Btw, I noticed that E and PI are defined as constants in py-expression-eval. Do we have options to disable such implication? As E and PI may appear in expressions as normal variable names, and they are both valid variable names in Python.
As both 1e3 and 1E3 are valid numbers in Python, they shall be allowed to be used in expression.
Btw, I noticed that E and PI are defined as constants in py-expression-eval. Do we have options to disable such implication? As E and PI may appear in expressions as normal variable names, and they are both valid variable names in Python.