On Sat, Jun 2, 2018 at 9:08 PM, Sharan Basappa <sharan.basa...@gmail.com> wrote: > Can anyone please tell me what the following line in a python program does: > > line = lambda x: x + 3 > > I have pasted the entire code below for reference: > > from scipy.optimize import fsolve > import numpy as np > line = lambda x: x + 3 > solution = fsolve(line, -2) > print solution
That creates a function. It's basically equivalent to: def line(x): return x + 3 Normally you won't take a lambda function and immediately assign it to a name. The point of a lambda function is that, unlike a def function, it can be used directly in a function call - so you might do something like this: solution = fsolve(lambda x: x + 3, -2) which will have the same effect as the code you showed. If you want it to have a name, like this, just use 'def'. ChrisA -- https://mail.python.org/mailman/listinfo/python-list