I want to integrate a * b**2 with the limits a = [0, 2] and b = [0, 1].
from scipy import integrate
f1 = lambda a, b: a * b ** 2
print((integrate.dblquad(f1, 0, 2, 0, 1))[0])
Output: 1.333...
Expected result: 0.666...
What's wrong?: The integration is being done with the limits a = [0, 1] and b = [0, 2].
Question: Why is lambda not reading the arguments in the order of their position?