asteval
minimalistic evaluator of python expression using ast module (by newville)
vermin
Concurrently detect the minimum Python versions needed to run code (by netromdk)
asteval | vermin | |
---|---|---|
3 | 3 | |
0 | 424 | |
- | - | |
7.0 | 7.6 | |
2 months ago | about 2 months ago | |
Python | Python | |
MIT License | MIT License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
asteval
Posts with mentions or reviews of asteval.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-05-30.
-
evalidate - Safe evaluation of untrusted user-supplied python expression
There is asteval project. It makes more poweful (ans slower) virtual python interpreter which you can use to run many commands in shared context. My benchmark (100 000 runs of simple python expressions):
-
evalidate: secure eval() for python
If compare to asteval (which is actually has much more features), evalidate is much faster in my benchmarks (benchmark code in repo): 0.017s vs 1.232s
-
A simple, kind-of "safe" eval ?
But, literals are not good enough very often, and one may want to do "len(foo)+bar[i]" , so I went searching trying to find a good implementation. I dug and found asteval, but this issue I raised breaks it for me, apart from the fact that I try not to rely on too many modules beyond the standard library + it has a bunch of peculiarities that make it not a real drop-in replacement to eval().
vermin
Posts with mentions or reviews of vermin.
We have used some of these posts to build our list of alternatives
and similar projects.
What are some alternatives?
When comparing asteval and vermin you can also consider the following projects:
piston - A high performance general purpose code execution engine.
emerge - Emerge is a browser-based interactive codebase and dependency visualization tool for many different programming languages. It supports some basic code quality and graph metrics and provides a simple and intuitive way to explore and analyze a codebase by using graph structures.