When I come across closure in python, from the below code, I don't understand how the values for the arguments assigned for x and y when calling the function. In Point 1, we passing argument value 5 for x. It is then assigned to x in the function. In Point 2, we passing 7 to inc5, My doubt arises here, again the value 7 should assign to x, but instead how come it is assigning to y.
def makeInc(x):
def inc(y):
return y + x
return inc
inc5 = makeInc(5) #Point 1
inc5(7) #Point 2