JavaScript
x
6
1
x = 0
2
x2 = 0
3
f = "numpy.sin(x)"
4
e1 = eval(f)
5
e2 = eval(f, {"x":x2})
6
The line for e2 (but not e1) generates an error:
JavaScript
1
2
1
NameError: name 'numpy' is not defined
2
Why?
Advertisement
Answer
I solved it by replacing:
JavaScript
1
2
1
f = "numpy.sin(x)"
2
with:
JavaScript
1
2
1
f = "__import__('numpy').sin(x)"
2